From 35096d1ed58219b94efbccae107af436ca93cb78 Mon Sep 17 00:00:00 2001 From: trafficlunar Date: Sun, 23 Nov 2025 22:19:37 +0000 Subject: [PATCH] fix: 7b004463 part two --- internal/handler/computer.go | 29 ++++++++++++++++------------- internal/service/computer.go | 2 +- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/internal/handler/computer.go b/internal/handler/computer.go index e21dd37..a4c8441 100644 --- a/internal/handler/computer.go +++ b/internal/handler/computer.go @@ -63,22 +63,25 @@ func HandleComputerWebSocket(w http.ResponseWriter, r *http.Request) { // Mark computer offline service.ComputerData.Online = false - // Calculate uptime - sessionUptime := int(time.Now().Unix()) - service.ComputerData.UptimeStart + // Calculate uptime only if we have a valid start time + if service.ComputerData.UptimeStart > 0 { + // Calculate uptime + sessionUptime := int(time.Now().Unix()) - service.ComputerData.UptimeStart - // Get current total uptime from data store - totalUptimeData := storage.GlobalDataStore.Get("uptime") - var totalUptime float64 - if totalUptimeData != nil { - totalUptime = totalUptimeData.(float64) + // Get current total uptime from data store + totalUptimeData := storage.GlobalDataStore.Get("uptime") + var totalUptime float64 + if totalUptimeData != nil { + totalUptime = totalUptimeData.(float64) + } + + // Add to totals + service.ComputerData.Totals.Uptime = totalUptime + float64(sessionUptime) + storage.GlobalDataStore.Set("uptime", service.ComputerData.Totals.Uptime) } - // Add to totals - service.ComputerData.Totals.Uptime = totalUptime + float64(sessionUptime) - storage.GlobalDataStore.Set("uptime", service.ComputerData.Totals.Uptime) - - // Reset uptime start (computer is offline) - service.ComputerData.UptimeStart = 0 + // Set uptime start to -1 (computer is offline) + service.ComputerData.UptimeStart = -1 break } diff --git a/internal/service/computer.go b/internal/service/computer.go index e60be44..2a9a156 100644 --- a/internal/service/computer.go +++ b/internal/service/computer.go @@ -8,7 +8,7 @@ import ( var ComputerData model.ComputerData = model.ComputerData{ Online: false, - UptimeStart: 0, + UptimeStart: -1, Totals: model.ComputerTotals{ Uptime: 0, Keys: 0,