Music could be started and controlled with no way to turn it off for a server. Adds a music_settings table (mirrors the same one velox-dashboard-api's dashboard toggle reads/writes), a /music toggle command gated to Manage Server, and checks in /play, /queue, and /volume so they refuse to run when a server has music turned off.
53 lines
1.7 KiB
Go
53 lines
1.7 KiB
Go
package services
|
|
|
|
import (
|
|
"velox-bot/internal/db/services/defaultrole"
|
|
"velox-bot/internal/db/services/level"
|
|
"velox-bot/internal/db/services/levelsettings"
|
|
"velox-bot/internal/db/services/logsettings"
|
|
"velox-bot/internal/db/services/meeting"
|
|
"velox-bot/internal/db/services/musicsettings"
|
|
"velox-bot/internal/db/services/projects"
|
|
"velox-bot/internal/db/services/rps"
|
|
"velox-bot/internal/db/services/schedule"
|
|
"velox-bot/internal/db/services/twitch"
|
|
"velox-bot/internal/db/services/usersettings"
|
|
"velox-bot/internal/db/services/welcome"
|
|
)
|
|
|
|
type Services struct {
|
|
Level *level.Service
|
|
LevelSettings *levelsettings.Service
|
|
Meeting *meeting.Service
|
|
Schedule *schedule.Service
|
|
UserSettings *usersettings.Service
|
|
Projects *projects.Service
|
|
RPS *rps.Service
|
|
Twitch *twitch.Service
|
|
Welcome *welcome.Service
|
|
DefaultRole *defaultrole.Service
|
|
LogSettings *logsettings.Service
|
|
MusicSettings *musicsettings.Service
|
|
}
|
|
|
|
var Global *Services
|
|
|
|
func NewServices(level *level.Service, levelSettings *levelsettings.Service, meeting *meeting.Service, schedule *schedule.Service, userSettings *usersettings.Service, projects *projects.Service, rps *rps.Service, twitchSvc *twitch.Service, welcomeSvc *welcome.Service, defaultRoleSvc *defaultrole.Service, logSettingsSvc *logsettings.Service, musicSvc *musicsettings.Service) *Services {
|
|
s := &Services{
|
|
Level: level,
|
|
LevelSettings: levelSettings,
|
|
Meeting: meeting,
|
|
Schedule: schedule,
|
|
UserSettings: userSettings,
|
|
Projects: projects,
|
|
RPS: rps,
|
|
Twitch: twitchSvc,
|
|
Welcome: welcomeSvc,
|
|
DefaultRole: defaultRoleSvc,
|
|
LogSettings: logSettingsSvc,
|
|
MusicSettings: musicSvc,
|
|
}
|
|
Global = s
|
|
return s
|
|
}
|