diff options
| author | William Hergès <william@herges.fr> | 2025-08-06 15:13:19 +0200 |
|---|---|---|
| committer | William Hergès <william@herges.fr> | 2025-08-06 15:13:19 +0200 |
| commit | 6d19ef42c4135dac57c23bf6d00041423255598d (patch) | |
| tree | 44f09db6002963b39002756b3dfa80d8034428f2 /commands | |
| parent | 0968c18b15c5fe58c0220fa20ef6a87000bd1a1e (diff) | |
refactor(config): handle fallback channel
Diffstat (limited to 'commands')
| -rw-r--r-- | commands/config.go | 51 |
1 files changed, 4 insertions, 47 deletions
diff --git a/commands/config.go b/commands/config.go index 9aa4682..18c5aa9 100644 --- a/commands/config.go +++ b/commands/config.go @@ -12,10 +12,8 @@ import ( ) const ( - ConfigModify = "config_modify" - ConfigModifyDisChannel = "disabled_channel" - ConfigModifyFallbackChannel = "fallback_channel" - ConfigModifyTimeReduce = "time_reduce" + ConfigModify = "config_modify" + ConfigModifyTimeReduce = "time_reduce" ) func Config(_ *discordgo.Session, i *discordgo.InteractionCreate, _ cmd.OptionMap, resp *cmd.ResponseBuilder) { @@ -85,13 +83,13 @@ func Config(_ *discordgo.Session, i *discordgo.InteractionCreate, _ cmd.OptionMa SetEmoji(&discordgo.ComponentEmoji{Name: "🏅"}), ). AddOption( - component.NewSelectOption("Salons désactivés", ConfigModifyDisChannel). + component.NewSelectOption("Salons désactivés", config.ModifyDisChannel). SetDescription("Gère les salons désactivés"). SetEmoji(&discordgo.ComponentEmoji{Name: "❌"}), ). AddOption( // I don't have a better idea for this... - component.NewSelectOption("Salons de repli", ConfigModifyFallbackChannel). + component.NewSelectOption("Salons de repli", config.ModifyFallbackChannel). SetDescription("Spécifie le salon de repli"). SetEmoji(&discordgo.ComponentEmoji{Name: "💾"}), ). @@ -176,47 +174,6 @@ func ConfigChannel(s *discordgo.Session, i *discordgo.InteractionCreate, optMap } } -func ConfigFallbackChannel(s *discordgo.Session, i *discordgo.InteractionCreate, optMap cmd.OptionMap, resp *cmd.ResponseBuilder) { - resp.IsEphemeral() - // verify every args - salon, ok := optMap["channel"] - if !ok { - err := resp.SetMessage("Le salon n'a pas été renseigné.").Send() - if err != nil { - logger.Alert("commands/config.go - Channel not set (fallback)", err.Error()) - } - return - } - channel := salon.ChannelValue(s) - if channel.Type != discordgo.ChannelTypeGuildText { - err := resp.SetMessage("Le salon n'est pas un salon textuel.").Send() - if err != nil { - logger.Alert("commands/config.go - Invalid channel type", err.Error()) - } - return - } - cfg := config.GetGuildConfig(i.GuildID) - cfg.FallbackChannel = channel.ID - // save - err := cfg.Save() - if err != nil { - logger.Alert( - "commands/config.go - Saving config", - err.Error(), - "guild_id", - i.GuildID, - "channel_id", - channel.ID, - ) - err = resp.SetMessage("Il y a eu une erreur lors de la modification de de la base de données.").Send() - } else { - err = resp.SetMessage("Salon enregistré.").Send() - } - if err != nil { - logger.Alert("commands/config.go - Channel saved message", err.Error()) - } -} - func ConfigPeriodBeforeReduce(s *discordgo.Session, i *discordgo.InteractionCreate, optMap cmd.OptionMap, resp *cmd.ResponseBuilder) { resp.IsEphemeral() // verify every args |
