mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-10-12 23:03:52 -04:00
The skin and css, the language and locale, the date, time and datetime formats, the default bandwidth and the snapshots feature switch all decide how the interface looks or what it offers, which is what that tab is for, but they sat under System among the shutdown command, the shm key and the audit intervals. System drops from 42 entries to 33 and Display goes from 32 to 41. The snapshots switch is read only by the skin: it gates a button in montage and montage review, a menu item, and the snapshot views and their permission checkboxes. Nothing in the daemons or the perl scripts looks at it. The category key is still 'web'. That is the tab now labelled Display; the tab whose key is 'display' holds the per-session cookie settings and stores no configuration at all, so a stored default does not belong there. The hint setup for the moved entries -- the installed skin list, the css list for the current skin, the bandwidth options, and the language and locale lists -- moves to the same branch. ZM_TIMEZONE stays under System. It reads like a presentation setting, but Filter.pm uses it for date arithmetic when evaluating filters, so it changes behaviour and not just what is displayed. A migration, 1.39.40, is needed as well as the ConfigData change, because a version upgrade does not rewrite Config: zmupdate only reloads it from ConfigData under --freshen, which is mutually exclusive with an upgrade run. Fresh installs take the new category from the generated zm_create.sql. Verified both paths converge on 33 system and 41 display entries with identical membership: a fresh install of this branch, and a copy of a real pre-change Config table with the migration applied. On the running install the bandwidth, language and locale entries still render as their pickers on the new tab, css as its list of choices, and the timezone picker is still on System with its full list. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015Y6FieTwEXuLhhR4e2yiax