diff --git a/main.go b/main.go index e649b8e..f6077ad 100644 --- a/main.go +++ b/main.go @@ -89,14 +89,15 @@ func main() { liveCfg := *app.server.appConfig // copy, not pointer app.server.mu.RUnlock() - // Handle viewer server toggle. - if liveCfg.Auth.Viewer.Enabled && app.viewerSrv == nil { + // Handle viewer server toggle via viewer_port. + viewerOn := liveCfg.Server.ViewerPort != "" && liveCfg.Server.ViewerPort != ":0" + if viewerOn && app.viewerSrv == nil { go func() { v, err := app.server.StartViewerServer() if err != nil { log.Printf("Viewer server: %v", err) } app.viewerSrv = v }() - } else if !liveCfg.Auth.Viewer.Enabled && app.viewerSrv != nil { + } else if !viewerOn && app.viewerSrv != nil { log.Println("Stopping viewer server...") app.viewerSrv.Close() app.viewerSrv = nil @@ -119,7 +120,7 @@ func main() { }() // Start viewer server only if enabled. - if cfg.Auth.Viewer.Enabled { + if cfg.Server.ViewerPort != "" && cfg.Server.ViewerPort != ":0" { go func() { v, err := app.server.StartViewerServer() if err != nil { @@ -128,7 +129,7 @@ func main() { app.viewerSrv = v }() } else { - log.Println("Viewer server: disabled in config") + log.Println("Viewer server: disabled (viewer_port empty)") } select { diff --git a/public/app.js b/public/app.js index 51c6b4c..66a3dfb 100644 --- a/public/app.js +++ b/public/app.js @@ -277,7 +277,7 @@ async function renderCameraCards() {