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:
2026-10-12 16:50:41 +02:00
parent 68294ecb6f
commit 462196e29b
11 changed files with 659 additions and 89 deletions
+11 -2
View File
@@ -3,6 +3,7 @@ package web
import (
"time"
"gitea.dooplex.hu/admin/felhom-controller/internal/settings"
"gitea.dooplex.hu/admin/felhom-controller/internal/stacks"
)
@@ -262,7 +263,7 @@ func i18nCasesA() []i18nCase {
d := i18nLayoutData("settings-notifications", "Értesítések")
d["HubEnabled"] = true
d["NotificationSuccess"], d["NotificationError"] = "A beállítás elmentve.", "A mentés nem sikerült."
d["NotificationPrefs"] = map[string]interface{}{"Email": "anna@example.hu", "EnabledEvents": []string{"backup_failed", "node_down"}, "CooldownHours": 4}
d["NotificationPrefs"] = &settings.NotificationPrefs{Email: "anna@example.hu", EnabledEvents: []string{"backup_failed", "node_down"}, CooldownHours: 4}
d["AppEmailAvailable"], d["AppEmailEnabled"], d["AppEmailFromName"] = true, true, "Kovács család"
d["AppEmailSuccess"], d["AppEmailError"] = "Az e-mail beállítás mentve.", "Az e-mail beállítás hibás."
return d
@@ -272,7 +273,15 @@ func i18nCasesA() []i18nCase {
d := i18nLayoutData("settings-notifications", "Értesítések")
d["HubEnabled"] = true
d["NotificationClearConfirm"] = true
d["NotificationPrefs"] = map[string]interface{}{"Email": "", "EnabledEvents": []string{}, "CooldownHours": 6}
d["NotificationPrefs"] = &settings.NotificationPrefs{Email: "", EnabledEvents: []string{}, CooldownHours: 6}
return d
}},
// v0.309.0 (R-388 slice 1, decision 200): every group „egyedi" (custom) — some of its detectors on,
// some off — so each group's custom badge and hint renders; captured when born.
{"settings_notifications_groups_custom", "settings_notifications", func() map[string]interface{} {
d := i18nLayoutData("settings-notifications", "Értesítések")
d["HubEnabled"] = true
d["NotificationPrefs"] = &settings.NotificationPrefs{Email: "anna@example.hu", EnabledEvents: []string{"disk_warning", "app_update_held", "backup_failed"}, CooldownHours: 6}
return d
}},
{"settings_notifications_nohub", "settings_notifications", func() map[string]interface{} {