Reorganized the code, moved more things to the new part

This commit is contained in:
2025-01-13 16:08:54 +01:00
parent 034ba35fbb
commit 5b640375c3
38 changed files with 213 additions and 2028 deletions

View File

@@ -0,0 +1,102 @@
package server
import (
"music-server/internal/backend"
"music-server/internal/helpers"
"music-server/pkg/models"
"net/http"
"github.com/labstack/echo"
)
type MusicHandler struct {
}
func NewMusicHandler() *MusicHandler {
return &MusicHandler{}
}
func (m *MusicHandler) GetSong(ctx echo.Context) error {
song := ctx.QueryParam("song")
if song == "" {
return ctx.String(http.StatusBadRequest, "song can't be empty")
}
s := backend.GetSong(song)
return helpers.SendSong(ctx, s)
}
func (m *MusicHandler) GetSoundCheckSong(ctx echo.Context) error {
song := backend.GetSoundCheckSong()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) ResetMusic(ctx echo.Context) error {
backend.Reset()
return ctx.NoContent(http.StatusOK)
}
func (m *MusicHandler) GetRandomSong(ctx echo.Context) error {
song := backend.GetRandomSong()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) GetRandomSongLowChance(ctx echo.Context) error {
song := backend.GetRandomSongLowChance()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) GetRandomSongClassic(ctx echo.Context) error {
song := backend.GetRandomSongClassic()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) GetSongInfo(ctx echo.Context) error {
song := backend.GetSongInfo()
return ctx.JSON(http.StatusOK, song)
}
func (m *MusicHandler) GetPlayedSongs(ctx echo.Context) error {
songList := backend.GetPlayedSongs()
return ctx.JSON(http.StatusOK, songList)
}
func (m *MusicHandler) GetNextSong(ctx echo.Context) error {
song := backend.GetNextSong()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) GetPreviousSong(ctx echo.Context) error {
song := backend.GetPreviousSong()
return helpers.SendSong(ctx, song)
}
func (m *MusicHandler) GetAllGames(ctx echo.Context) error {
gameList := backend.GetAllGames()
return ctx.JSON(http.StatusOK, gameList)
}
func (m *MusicHandler) GetAllGamesRandom(ctx echo.Context) error {
gameList := backend.GetAllGamesRandom()
return ctx.JSON(http.StatusOK, gameList)
}
func (m *MusicHandler) PutPlayed(ctx echo.Context) error {
var played models.Played
err := ctx.Bind(&played)
if err != nil {
//helpers.NewError(ctx, http.StatusBadRequest, err)
return ctx.JSON(http.StatusBadRequest, err)
}
backend.SetPlayed(played.Song)
return ctx.NoContent(http.StatusOK)
}
func (m *MusicHandler) AddLatestToQue(ctx echo.Context) error {
backend.AddLatestToQue()
return ctx.NoContent(http.StatusOK)
}
func (m *MusicHandler) AddLatestPlayed(ctx echo.Context) error {
backend.AddLatestPlayed()
return ctx.NoContent(http.StatusOK)
}