diff options
| author | Fuwn <[email protected]> | 2026-01-19 18:37:16 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2026-01-19 18:37:16 -0800 |
| commit | db17158de7bd7b0a9656893c0c36c6b198b0d713 (patch) | |
| tree | ebc51b6c4ac52edf73612d37468076afbafe0d1b /internal/server | |
| parent | fix: Preserve config formatting when updating reset flag (diff) | |
| download | kaze-db17158de7bd7b0a9656893c0c36c6b198b0d713.tar.xz kaze-db17158de7bd7b0a9656893c0c36c6b198b0d713.zip | |
feat: Add disable_ping_tooltips option to hide ping hover details
Add monitor-level option to disable hover tooltips on individual ping bars.
Can be set at group defaults or per-monitor. When enabled, visual appearance
remains unchanged but tooltips no longer appear on hover.
Diffstat (limited to 'internal/server')
| -rw-r--r-- | internal/server/server.go | 30 | ||||
| -rw-r--r-- | internal/server/templates/index.html | 4 |
2 files changed, 18 insertions, 16 deletions
diff --git a/internal/server/server.go b/internal/server/server.go index d0f6fa5..8681873 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -141,18 +141,19 @@ type GroupData struct { // MonitorData contains data for a single monitor type MonitorData struct { - Name string - Type string - Status string - StatusClass string - ResponseTime int64 - UptimePercent float64 - Ticks []*storage.TickData // Aggregated tick data for history bar - SSLDaysLeft int - SSLExpiryDate time.Time - SSLTooltip string // JSON data for SSL expiration tooltip - LastCheck time.Time - LastError string + Name string + Type string + Status string + StatusClass string + ResponseTime int64 + UptimePercent float64 + Ticks []*storage.TickData // Aggregated tick data for history bar + SSLDaysLeft int + SSLExpiryDate time.Time + SSLTooltip string // JSON data for SSL expiration tooltip + LastCheck time.Time + LastError string + DisablePingTooltips bool } // IncidentData contains data for an incident @@ -216,8 +217,9 @@ func (s *Server) handleIndex(w http.ResponseWriter, r *http.Request) { for _, monCfg := range group.Monitors { md := MonitorData{ - Name: monCfg.Name, - Type: monCfg.Type, + Name: monCfg.Name, + Type: monCfg.Type, + DisablePingTooltips: monCfg.DisablePingTooltips, } if stat, ok := stats[monCfg.Name]; ok { diff --git a/internal/server/templates/index.html b/internal/server/templates/index.html index 7713c23..f136e51 100644 --- a/internal/server/templates/index.html +++ b/internal/server/templates/index.html @@ -116,10 +116,10 @@ <!-- History Bar --> <div class="mt-3 flex gap-px"> {{range .Ticks}} - <div class="flex-1 h-6 rounded-sm {{tickColor .}}" data-tooltip='{{tickTooltipData . $.TickMode $.Timezone}}'></div> + <div class="flex-1 h-6 rounded-sm {{tickColor .}}"{{if not $.DisablePingTooltips}} data-tooltip='{{tickTooltipData . $.TickMode $.Timezone}}'{{end}}></div> {{else}} {{range seq $.TickCount}} - <div class="flex-1 h-6 rounded-sm bg-neutral-200 dark:bg-neutral-800" data-tooltip='{"header":"No data"}'></div> + <div class="flex-1 h-6 rounded-sm bg-neutral-200 dark:bg-neutral-800"{{if not $.DisablePingTooltips}} data-tooltip='{"header":"No data"}'{{end}}></div> {{end}} {{end}} </div> |