Add option to hide viewer count. Closes #1939

This commit is contained in:
Gabe Kangas
2022-06-26 00:46:55 -07:00
parent 97db93e0d7
commit b08393295f
11 changed files with 209 additions and 125 deletions

View File

@@ -6,6 +6,7 @@ import (
"time"
"github.com/owncast/owncast/core"
"github.com/owncast/owncast/core/data"
"github.com/owncast/owncast/router/middleware"
"github.com/owncast/owncast/utils"
)
@@ -15,7 +16,6 @@ func GetStatus(w http.ResponseWriter, r *http.Request) {
status := core.GetStatus()
response := webStatusResponse{
Online: status.Online,
ViewerCount: status.ViewerCount,
ServerTime: time.Now(),
LastConnectTime: status.LastConnectTime,
LastDisconnectTime: status.LastDisconnectTime,
@@ -23,6 +23,10 @@ func GetStatus(w http.ResponseWriter, r *http.Request) {
StreamTitle: status.StreamTitle,
}
if !data.GetHideViewerCount() {
response.ViewerCount = status.ViewerCount
}
w.Header().Set("Content-Type", "application/json")
middleware.DisableCache(w)
@@ -33,7 +37,7 @@ func GetStatus(w http.ResponseWriter, r *http.Request) {
type webStatusResponse struct {
Online bool `json:"online"`
ViewerCount int `json:"viewerCount"`
ViewerCount int `json:"viewerCount,omitempty"`
ServerTime time.Time `json:"serverTime"`
LastConnectTime *utils.NullTime `json:"lastConnectTime"`
LastDisconnectTime *utils.NullTime `json:"lastDisconnectTime"`