fix(tui): show — for uptime when monitor is in maintenance
Monitors in active maintenance now display — instead of a misleading 0.0% uptime in both the main table and detail sidebar.
This commit was merged in pull request #166.
This commit is contained in:
@@ -104,6 +104,13 @@ func (m Model) fmtLatency(d time.Duration) string {
|
|||||||
return m.st.dangerStyle.Render(s)
|
return m.st.dangerStyle.Render(s)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m Model) fmtUptimeMaint(statuses []bool, siteID int) string {
|
||||||
|
if m.isMonitorInMaintenance(siteID) {
|
||||||
|
return m.st.subtleStyle.Render("—")
|
||||||
|
}
|
||||||
|
return m.fmtUptime(statuses)
|
||||||
|
}
|
||||||
|
|
||||||
func (m Model) fmtUptime(statuses []bool) string {
|
func (m Model) fmtUptime(statuses []bool) string {
|
||||||
if len(statuses) == 0 {
|
if len(statuses) == 0 {
|
||||||
return m.st.subtleStyle.Render("—")
|
return m.st.subtleStyle.Render("—")
|
||||||
|
|||||||
@@ -299,7 +299,7 @@ func (m Model) viewSitesTab() string {
|
|||||||
colType: typeIcon(site.Type, false) + " " + site.Type,
|
colType: typeIcon(site.Type, false) + " " + site.Type,
|
||||||
colStatus: m.fmtStatus(site.Status, site.Paused, m.isMonitorInMaintenance(site.ID)),
|
colStatus: m.fmtStatus(site.Status, site.Paused, m.isMonitorInMaintenance(site.ID)),
|
||||||
colLatency: m.fmtLatency(site.Latency),
|
colLatency: m.fmtLatency(site.Latency),
|
||||||
colUptime: m.fmtUptime(hist.Statuses),
|
colUptime: m.fmtUptimeMaint(hist.Statuses, site.ID),
|
||||||
colHistory: spark,
|
colHistory: spark,
|
||||||
colSSL: m.fmtSSL(site),
|
colSSL: m.fmtSSL(site),
|
||||||
colRetries: m.fmtRetries(site),
|
colRetries: m.fmtRetries(site),
|
||||||
|
|||||||
@@ -53,7 +53,11 @@ func (m Model) viewDetailSidebar(site models.Site, hist monitor.SiteHistory, wid
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Uptime + retries
|
// Uptime + retries
|
||||||
uptimeParts := []string{label.Render("Uptime") + " " + m.fmtUptime(hist.Statuses)}
|
uptimeStr := m.fmtUptime(hist.Statuses)
|
||||||
|
if m.isMonitorInMaintenance(site.ID) {
|
||||||
|
uptimeStr = m.st.subtleStyle.Render("—")
|
||||||
|
}
|
||||||
|
uptimeParts := []string{label.Render("Uptime") + " " + uptimeStr}
|
||||||
if site.Type != "group" && site.MaxRetries > 0 {
|
if site.Type != "group" && site.MaxRetries > 0 {
|
||||||
uptimeParts = append(uptimeParts, label.Render("Retries")+" "+m.fmtRetries(site))
|
uptimeParts = append(uptimeParts, label.Render("Retries")+" "+m.fmtRetries(site))
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user