v0.13.1: UI polish fixes round 2 (4 fixes)
- Fix 1: deploy-cross-drive card uses correct CSS vars (--bg-secondary, --border-color) - Fix 2: Auto-generated env values — badge inline with label, remove copy buttons, muted readonly inputs - Fix 3: Snapshot table shows 0 instead of n/a; remove unused .col-na CSS - Fix 4: Disk warnings moved inline under storage bars (Inline alert field, GetInlineAlerts, inline-warning CSS) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,7 @@ type Alert struct {
|
||||
Link string // optional link to relevant page
|
||||
LinkText string // link display text
|
||||
PageOnly []string // if non-empty, only show on these pages (e.g., ["dashboard", "monitoring"])
|
||||
Inline bool // if true, rendered by page template inline, not in layout banner
|
||||
}
|
||||
|
||||
// AlertManager generates and stores dashboard alerts from health check results.
|
||||
@@ -62,10 +63,11 @@ func (am *AlertManager) Refresh(report *monitor.HealthReport, cfg *config.Config
|
||||
Link: "/monitoring",
|
||||
LinkText: "Rendszermonitor",
|
||||
}
|
||||
// Disk-related warnings only relevant on dashboard and monitoring pages
|
||||
// Disk-related warnings rendered inline under storage bars, not in top banner
|
||||
if strings.Contains(w, "meghajtón") || strings.Contains(w, "adattároló") || strings.Contains(w, "meghajtó") {
|
||||
alert.ID = "disk-not-separate"
|
||||
alert.PageOnly = []string{"dashboard", "monitoring"}
|
||||
alert.Inline = true
|
||||
}
|
||||
alerts = append(alerts, alert)
|
||||
}
|
||||
@@ -143,6 +145,30 @@ func (am *AlertManager) GetAlerts(excludeIDs ...string) []Alert {
|
||||
return result
|
||||
}
|
||||
|
||||
// GetInlineAlerts returns alerts marked as Inline for a specific page.
|
||||
func (am *AlertManager) GetInlineAlerts(page string) []Alert {
|
||||
am.mu.RLock()
|
||||
defer am.mu.RUnlock()
|
||||
|
||||
var result []Alert
|
||||
for _, a := range am.alerts {
|
||||
if !a.Inline {
|
||||
continue
|
||||
}
|
||||
if len(a.PageOnly) == 0 {
|
||||
result = append(result, a)
|
||||
continue
|
||||
}
|
||||
for _, p := range a.PageOnly {
|
||||
if p == page {
|
||||
result = append(result, a)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
// countMissingPings counts how many ping UUIDs are not configured.
|
||||
func countMissingPings(cfg *config.Config) int {
|
||||
count := 0
|
||||
|
||||
Reference in New Issue
Block a user