diff --git a/internal/http/dj_handlers.go b/internal/http/dj_handlers.go index c549944..cfb12fd 100644 --- a/internal/http/dj_handlers.go +++ b/internal/http/dj_handlers.go @@ -92,13 +92,18 @@ func (dj *DJHandlers) Songs(w http.ResponseWriter, r *http.Request) { func (dj *DJHandlers) Status(w http.ResponseWriter, r *http.Request) { w.Header().Add("Content-Type", "application/json") + var curSong *radio.Song = nil + if dj.songList.Current() != nil { + curSong = &radio.Song{} + *curSong = *dj.songList.Current() + } err := json.NewEncoder(w).Encode(&struct { - Current radio.Song `json:"current_song,omitempty"` + Current *radio.Song `json:"current_song,omitempty"` Listeners *radio.ListenerCounter `json:"listeners"` List []radio.Song `json:"last_songs,omitempty"` Mls *radio.MostListenedSong `json:"most_listened_song,omitempty"` }{ - Current: dj.songList.Current(), + Current: curSong, Listeners: dj.listeners, List: dj.songList.List(), Mls: radio.MostListened()})