v0.309.0: the notification page shows three group switches; details and cooldown under Részletek (R-388 slice 1, decision 200)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
+18
-3
@@ -2910,8 +2910,23 @@ live hardware), which is exactly what the marker covers.
|
||||
|
||||
#### Default Enabled Events
|
||||
|
||||
Events the customer receives notifications for (configurable in settings):
|
||||
`backup_failed`, `db_dump_failed`, `disk_warning`, `disk_critical`, `storage_disconnected`, `node_down`, `health_critical`, `expected_backup_missed`, `expected_dbdump_missed`
|
||||
Events the customer receives notifications for (configurable in settings) — `settings.DefaultEnabledEvents`:
|
||||
`backup_failed`, `db_dump_failed`, `disk_warning`, `disk_critical`, `storage_disconnected`, `node_down`, `health_critical`, `expected_backup_missed`, `expected_dbdump_missed`, `offbox_enlarge_blocked`, `app_update_undone`, `app_update_held`, `app_stopped_unhealthy`
|
||||
|
||||
#### The page: three group switches (v0.309.0, R-388 slice 1, `08` §8.1, `09` §3 decision 200)
|
||||
|
||||
The notification page shows three switches instead of one per detector — „A gépem és a meghajtóim" / "My
|
||||
machine and drives", „Az alkalmazásaim" / "My apps", „Amit mi intézünk" / "What we handle" — each with one
|
||||
sentence of what it sends. The membership table is `settings.NotificationGroups` (every detector on the page
|
||||
is in exactly one group, pinned by `TestR388_EveryPageSwitchIsInExactlyOneGroup`). A group is a VIEW over the
|
||||
same `enabled_events` list: no wire change, no hub change. A group with some detectors on and some off shows
|
||||
as „egyedi" / "custom". The per-detector switches and the cooldown field sit under a „Részletek" / "Details"
|
||||
fold (`<details>`, no script). The save rule (`Server.applyNotificationGroupSwitches`): a group switch the
|
||||
household MOVED wins (sets or clears all its detectors); a group switch left where it was rendered leaves the
|
||||
per-detector switches authoritative — so a custom group saved untouched writes the list back byte-for-byte
|
||||
(`TestR388_CustomGroupSavedBackUnchanged`). A POST without the `group_<key>_shown` fields (an old page) is
|
||||
handled exactly as before. Note: today's default list fills NO group completely (each misses a member), so a
|
||||
fresh box shows all three as „egyedi" (`TestR388_DefaultListAsGroups` pins this until the default is decided).
|
||||
|
||||
#### Preference Sync
|
||||
|
||||
@@ -3249,7 +3264,7 @@ Five sections:
|
||||
2. **Version & update** — current/latest version, check/update buttons, auto-update status, last update result
|
||||
3. **Storage paths** — add/remove, edit labels, set default, toggle schedulable, per-path app list with sizes, safe disconnect/reconnect for USB drives
|
||||
4. **Password change** — current + new + confirm, min 8 chars
|
||||
5. **Notifications** — email, event checkboxes, cooldown hours, test email button
|
||||
5. **Notifications** — email, three group switches (v0.309.0), the per-event checkboxes and cooldown hours under „Részletek", test email button
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user