diff options
Diffstat (limited to 'config')
| -rw-r--r-- | config/channel.go | 116 | ||||
| -rw-r--r-- | config/xp_reduce.go | 87 | ||||
| -rw-r--r-- | config/xp_role.go | 171 |
3 files changed, 184 insertions, 190 deletions
diff --git a/config/channel.go b/config/channel.go index 537d586..c09061f 100644 --- a/config/channel.go +++ b/config/channel.go @@ -4,9 +4,9 @@ import ( "strings" "github.com/anhgelus/gokord/cmd" - "github.com/anhgelus/gokord/component" "github.com/anhgelus/gokord/logger" discordgo "github.com/nyttikord/gokord" + "github.com/nyttikord/gokord/interaction" ) const ( @@ -20,16 +20,16 @@ const ( DisChannelDelSet = "disabled_channel_del_set" ) -func HandleModifyFallbackChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - err := resp.IsEphemeral().SetComponents(component.New().Add(component.NewActionRow().Add( - component.NewChannelSelect(FallbackChannelSet).AddChannelType(discordgo.ChannelTypeGuildText), - ))).Send() - if err != nil { - logger.Alert("config/channel.go - Sending channel list for fallback", err.Error()) - } +func HandleModifyFallbackChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //err := resp.IsEphemeral().SetComponents(component.New().Add(component.NewActionRow().Add( + // component.NewChannelSelect(FallbackChannelSet).AddChannelType(discordgo.ChannelTypeGuildText), + //))).Send() + //if err != nil { + // logger.Alert("config/channel.go - Sending channel list for fallback", err.Error()) + //} } -func HandleFallbackChannelSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { +func HandleFallbackChannelSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { resp.IsEphemeral() cfg := GetGuildConfig(i.GuildID) @@ -49,61 +49,61 @@ func HandleFallbackChannelSet(_ *discordgo.Session, i *discordgo.InteractionCrea } } -func HandleModifyDisChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - err := resp.IsEphemeral().SetComponents(component.New().Add(component.NewActionRow(). - Add( - component.NewButton(DisChannelAdd, discordgo.PrimaryButton). - SetLabel("Désactiver un salon"). - SetEmoji(&discordgo.ComponentEmoji{Name: "⬇️"}), - ). - Add( - component.NewButton(DisChannelDel, discordgo.DangerButton). - SetLabel("Réactiver un salon"). - SetEmoji(&discordgo.ComponentEmoji{Name: "⬆️"}), - ), - )).Send() - if err != nil { - logger.Alert("config/channel.go - Sending action type", err.Error()) - } +func HandleModifyDisChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //err := resp.IsEphemeral().SetComponents(component.New().Add(component.NewActionRow(). + // Add( + // component.NewButton(DisChannelAdd, discordgo.PrimaryButton). + // SetLabel("Désactiver un salon"). + // SetEmoji(&discordgo.ComponentEmoji{Name: "⬇️"}), + // ). + // Add( + // component.NewButton(DisChannelDel, discordgo.DangerButton). + // SetLabel("Réactiver un salon"). + // SetEmoji(&discordgo.ComponentEmoji{Name: "⬆️"}), + // ), + //)).Send() + //if err != nil { + // logger.Alert("config/channel.go - Sending action type", err.Error()) + //} } -func HandleDisChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - resp.IsEphemeral().SetMessage("Salon à désactiver...") - cID := DisChannelAddSet - if data.CustomID == DisChannelDel { - resp.SetMessage("Salon à réactiver...") - cID = DisChannelDelSet - } - err := resp.SetComponents(component.New().Add(component.NewActionRow().Add(component.NewChannelSelect(cID)))).Send() - if err != nil { - logger.Alert("config/channel.go - Sending channel list for disable", err.Error()) - } +func HandleDisChannel(_ *discordgo.Session, _ *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //resp.IsEphemeral().SetMessage("Salon à désactiver...") + //cID := DisChannelAddSet + //if data.CustomID == DisChannelDel { + // resp.SetMessage("Salon à réactiver...") + // cID = DisChannelDelSet + //} + //err := resp.SetComponents(component.New().Add(component.NewActionRow().Add(component.NewChannelSelect(cID)))).Send() + //if err != nil { + // logger.Alert("config/channel.go - Sending channel list for disable", err.Error()) + //} } -func HandleDisChannelAddSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - resp.IsEphemeral() - cfg := GetGuildConfig(i.GuildID) - id := data.Values[0] - if strings.Contains(cfg.DisabledChannels, id) { - err := resp.SetMessage("Le salon est déjà dans la liste des salons désactivés").Send() - if err != nil { - logger.Alert("commands/config.go - Channel already disabled", err.Error()) - } - return - } - cfg.DisabledChannels += id + ";" - if err := cfg.Save(); err != nil { - logger.Alert("commands/config.go - Saving config disable add", err.Error()) - if err = resp.SetMessage("Il y a eu une erreur lors de la modification de de la base de données.").Send(); err != nil { - logger.Alert("config/channel.go - Sending error while saving config", err.Error()) - } - } - if err := resp.SetMessage("Modification sauvegardé.").Send(); err != nil { - logger.Alert("commands/config.go - Modification saved message disable add", err.Error()) - } +func HandleDisChannelAddSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //resp.IsEphemeral() + //cfg := GetGuildConfig(i.GuildID) + //id := data.Values[0] + //if strings.Contains(cfg.DisabledChannels, id) { + // err := resp.SetMessage("Le salon est déjà dans la liste des salons désactivés").Send() + // if err != nil { + // logger.Alert("commands/config.go - Channel already disabled", err.Error()) + // } + // return + //} + //cfg.DisabledChannels += id + ";" + //if err := cfg.Save(); err != nil { + // logger.Alert("commands/config.go - Saving config disable add", err.Error()) + // if err = resp.SetMessage("Il y a eu une erreur lors de la modification de de la base de données.").Send(); err != nil { + // logger.Alert("config/channel.go - Sending error while saving config", err.Error()) + // } + //} + //if err := resp.SetMessage("Modification sauvegardé.").Send(); err != nil { + // logger.Alert("commands/config.go - Modification saved message disable add", err.Error()) + //} } -func HandleDisChannelDelSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { +func HandleDisChannelDelSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { resp.IsEphemeral() cfg := GetGuildConfig(i.GuildID) id := data.Values[0] diff --git a/config/xp_reduce.go b/config/xp_reduce.go index defc54b..4bcdd1e 100644 --- a/config/xp_reduce.go +++ b/config/xp_reduce.go @@ -1,12 +1,9 @@ package config import ( - "strconv" - "github.com/anhgelus/gokord/cmd" - "github.com/anhgelus/gokord/component" - "github.com/anhgelus/gokord/logger" discordgo "github.com/nyttikord/gokord" + "github.com/nyttikord/gokord/interaction" ) const ( @@ -14,47 +11,47 @@ const ( TimeReduceSet = "time_reduce_set" ) -func HandleModifyPeriodicReduce(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - err := resp.IsModal(). - SetCustomID(TimeReduceSet). - SetComponents(component.New().ForModal().Add(component.NewActionRow().ForModal().Add( - component.NewTextInput(TimeReduceSet, "Jours avant la réduction", discordgo.TextInputShort). - SetMinLength(1). - SetMaxLength(3), - ))).Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Sending modal for periodic reduce", err.Error()) - } +func HandleModifyPeriodicReduce(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //err := resp.IsModal(). + // SetCustomID(TimeReduceSet). + // SetComponents(component.New().ForModal().Add(component.NewActionRow().ForModal().Add( + // component.NewTextInput(TimeReduceSet, "Jours avant la réduction", discordgo.TextInputShort). + // SetMinLength(1). + // SetMaxLength(3), + // ))).Send() + //if err != nil { + // logger.Alert("config/xp_reduce.go - Sending modal for periodic reduce", err.Error()) + //} } -func HandleTimeReduceSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.ModalSubmitInteractionData, resp *cmd.ResponseBuilder) { - resp.IsEphemeral() - v := data.Components[0].(*discordgo.ActionsRow).Components[0].(*discordgo.TextInput).Value - days, err := strconv.Atoi(v) - if err != nil { - logger.Debug(err.Error()) - if err = resp.SetMessage("Nombres de jours invalides. Merci de mettre un entier.").Send(); err != nil { - logger.Alert("config/xp_reduce.go - Sending bad input", err.Error()) - } - return - } - if days < 30 { - err = resp.SetMessage("Le nombre de jours est inférieur à 30.").Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Days < 30 (fallback)", err.Error()) - } - return - } - cfg := GetGuildConfig(i.GuildID) - cfg.DaysXPRemains = uint(days) - if err = cfg.Save(); err != nil { - logger.Alert("config/channel.go - Saving days xp remains", err.Error()) - if err = resp.SetMessage("Erreur lors de la sauvegarde du salon").Send(); err != nil { - logger.Alert("config/xp_reduce.go - Sending error while saving days xp remains", err.Error()) - } - return - } - if err = resp.SetMessage("Modification sauvegardée.").Send(); err != nil { - logger.Alert("config/xp_reduce.go - Sending days saved", err.Error()) - } +func HandleTimeReduceSet(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.ModalSubmitData, resp *cmd.ResponseBuilder) { + //resp.IsEphemeral() + //v := data.Components[0].(*discordgo.ActionsRow).Components[0].(*discordgo.TextInput).Value + //days, err := strconv.Atoi(v) + //if err != nil { + // logger.Debug(err.Error()) + // if err = resp.SetMessage("Nombres de jours invalides. Merci de mettre un entier.").Send(); err != nil { + // logger.Alert("config/xp_reduce.go - Sending bad input", err.Error()) + // } + // return + //} + //if days < 30 { + // err = resp.SetMessage("Le nombre de jours est inférieur à 30.").Send() + // if err != nil { + // logger.Alert("config/xp_reduce.go - Days < 30 (fallback)", err.Error()) + // } + // return + //} + //cfg := GetGuildConfig(i.GuildID) + //cfg.DaysXPRemains = uint(days) + //if err = cfg.Save(); err != nil { + // logger.Alert("config/channel.go - Saving days xp remains", err.Error()) + // if err = resp.SetMessage("Erreur lors de la sauvegarde du salon").Send(); err != nil { + // logger.Alert("config/xp_reduce.go - Sending error while saving days xp remains", err.Error()) + // } + // return + //} + //if err = resp.SetMessage("Modification sauvegardée.").Send(); err != nil { + // logger.Alert("config/xp_reduce.go - Sending days saved", err.Error()) + //} } diff --git a/config/xp_role.go b/config/xp_role.go index 97de8be..39e48f6 100644 --- a/config/xp_role.go +++ b/config/xp_role.go @@ -2,15 +2,12 @@ package config import ( "fmt" - "strconv" - "time" - "git.anhgelus.world/anhgelus/les-copaings-bot/exp" "github.com/anhgelus/gokord" "github.com/anhgelus/gokord/cmd" - "github.com/anhgelus/gokord/component" "github.com/anhgelus/gokord/logger" discordgo "github.com/nyttikord/gokord" + "github.com/nyttikord/gokord/interaction" ) type XpRole struct { @@ -36,50 +33,50 @@ var ( configModifyMap = map[string]uint{} ) -func HandleModifyXpRole(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - err := resp.IsEphemeral(). - SetMessage("Action à réaliser"). - SetComponents(component.New().Add(component.NewActionRow(). - Add(component.NewButton(XpRoleAdd, discordgo.PrimaryButton). - SetLabel("Ajouter"). - SetEmoji(&discordgo.ComponentEmoji{Name: "⬆️"}), - ). - Add(component.NewButton(XpRoleEdit, discordgo.SecondaryButton). - SetLabel("Modifier"). - SetEmoji(&discordgo.ComponentEmoji{Name: "📝"}), - ). - Add(component.NewButton(XpRoleDel, discordgo.DangerButton). - SetLabel("Supprimer"). - SetEmoji(&discordgo.ComponentEmoji{Name: "❌"}), - ), - )).Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Sending config", err.Error()) - } +func HandleModifyXpRole(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //err := resp.IsEphemeral(). + // SetMessage("Action à réaliser"). + // SetComponents(component.New().Add(component.NewActionRow(). + // Add(component.NewButton(XpRoleAdd, discordgo.PrimaryButton). + // SetLabel("Ajouter"). + // SetEmoji(&discordgo.ComponentEmoji{Name: "⬆️"}), + // ). + // Add(component.NewButton(XpRoleEdit, discordgo.SecondaryButton). + // SetLabel("Modifier"). + // SetEmoji(&discordgo.ComponentEmoji{Name: "📝"}), + // ). + // Add(component.NewButton(XpRoleDel, discordgo.DangerButton). + // SetLabel("Supprimer"). + // SetEmoji(&discordgo.ComponentEmoji{Name: "❌"}), + // ), + // )).Send() + //if err != nil { + // logger.Alert("config/xp_reduce.go - Sending config", err.Error()) + //} } -func HandleXpRoleAddEdit(_ *discordgo.Session, _ *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - cID := XpRoleAddLevel - if data.CustomID == XpRoleEdit { - cID = XpRoleEditLevel - } - err := resp.IsModal(). - SetTitle("Role"). - SetCustomID(cID). - SetComponents(component.New().ForModal().Add(component.NewActionRow().ForModal().Add( - component.NewTextInput(cID, "Niveau", discordgo.TextInputShort). - SetPlaceholder("5"). - IsRequired(). - SetMinLength(0). - SetMaxLength(5), - ))). - Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Sending modal to add/edit", err.Error()) - } +func HandleXpRoleAddEdit(_ *discordgo.Session, _ *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //cID := XpRoleAddLevel + //if data.CustomID == XpRoleEdit { + // cID = XpRoleEditLevel + //} + //err := resp.IsModal(). + // SetTitle("Role"). + // SetCustomID(cID). + // SetComponents(component.New().ForModal().Add(component.NewActionRow().ForModal().Add( + // component.NewTextInput(cID, "Niveau", discordgo.TextInputShort). + // SetPlaceholder("5"). + // IsRequired(). + // SetMinLength(0). + // SetMaxLength(5), + // ))). + // Send() + //if err != nil { + // logger.Alert("config/xp_reduce.go - Sending modal to add/edit", err.Error()) + //} } -func HandleXpRoleAddRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { +func HandleXpRoleAddRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { resp.IsEphemeral() cfg := GetGuildConfig(i.GuildID) roleId := data.Values[0] @@ -111,7 +108,7 @@ func HandleXpRoleAddRole(_ *discordgo.Session, i *discordgo.InteractionCreate, d } } -func HandleXpRoleEditRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { +func HandleXpRoleEditRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { resp.IsEphemeral() cfg := GetGuildConfig(i.GuildID) roleId := data.Values[0] @@ -139,17 +136,17 @@ func HandleXpRoleEditRole(_ *discordgo.Session, i *discordgo.InteractionCreate, } } -func HandleXpRoleDel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { - err := resp.IsEphemeral(). - SetMessage("Rôle à supprimer"). - SetComponents(component.New().Add(component.NewActionRow().Add(component.NewRoleSelect(XpRoleDelRole)))). - Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Sending response to del", err.Error()) - } +func HandleXpRoleDel(_ *discordgo.Session, _ *discordgo.InteractionCreate, _ interaction.MessageComponentData, resp *cmd.ResponseBuilder) { + //err := resp.IsEphemeral(). + // SetMessage("Rôle à supprimer"). + // SetComponents(component.New().Add(component.NewActionRow().Add(component.NewRoleSelect(XpRoleDelRole)))). + // Send() + //if err != nil { + // logger.Alert("config/xp_reduce.go - Sending response to del", err.Error()) + //} } -func HandleXpRoleDelRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.MessageComponentInteractionData, resp *cmd.ResponseBuilder) { +func HandleXpRoleDelRole(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.MessageComponentData, resp *cmd.ResponseBuilder) { resp.IsEphemeral() cfg := GetGuildConfig(i.GuildID) roleId := data.Values[0] @@ -176,39 +173,39 @@ func HandleXpRoleDelRole(_ *discordgo.Session, i *discordgo.InteractionCreate, d } } -func HandleXpRoleLevel(_ *discordgo.Session, i *discordgo.InteractionCreate, data discordgo.ModalSubmitInteractionData, resp *cmd.ResponseBuilder) { - resp.IsEphemeral() - input := data.Components[0].(*discordgo.ActionsRow).Components[0].(*discordgo.TextInput) - - k := getKeyConfigRole(i) - in, err := strconv.Atoi(input.Value) - if err != nil || in < 0 { - if err = resp. - SetMessage("Impossible de lire le nombre. Il doit s'agit d'un nombre entier positif."). - Send(); err != nil { - logger.Alert("command/config.go - Sending bad number", err.Error()) - } - return - } - configModifyMap[k] = exp.LevelXP(uint(in)) - go func(i *discordgo.InteractionCreate, k string) { - time.Sleep(5 * time.Minute) - delete(configModifyMap, k) - }(i, k) - - cID := XpRoleAddRole - resp.SetMessage("Rôle à ajouter") - if data.CustomID == XpRoleEditLevel { - cID = XpRoleEditRole - resp.SetMessage("Rôle à modifier") - } - - err = resp. - SetComponents(component.New().Add(component.NewActionRow().Add(component.NewRoleSelect(cID)))). - Send() - if err != nil { - logger.Alert("config/xp_reduce.go - Sending response to add/edit", err.Error()) - } +func HandleXpRoleLevel(_ *discordgo.Session, i *discordgo.InteractionCreate, data interaction.ModalSubmitData, resp *cmd.ResponseBuilder) { + //resp.IsEphemeral() + //input := data.Components[0].(*discordgo.ActionsRow).Components[0].(*discordgo.TextInput) + // + //k := getKeyConfigRole(i) + //in, err := strconv.Atoi(input.Value) + //if err != nil || in < 0 { + // if err = resp. + // SetMessage("Impossible de lire le nombre. Il doit s'agit d'un nombre entier positif."). + // Send(); err != nil { + // logger.Alert("command/config.go - Sending bad number", err.Error()) + // } + // return + //} + //configModifyMap[k] = exp.LevelXP(uint(in)) + //go func(i *discordgo.InteractionCreate, k string) { + // time.Sleep(5 * time.Minute) + // delete(configModifyMap, k) + //}(i, k) + // + //cID := XpRoleAddRole + //resp.SetMessage("Rôle à ajouter") + //if data.CustomID == XpRoleEditLevel { + // cID = XpRoleEditRole + // resp.SetMessage("Rôle à modifier") + //} + // + //err = resp. + // SetComponents(component.New().Add(component.NewActionRow().Add(component.NewRoleSelect(cID)))). + // Send() + //if err != nil { + // logger.Alert("config/xp_reduce.go - Sending response to add/edit", err.Error()) + //} } func getKeyConfigRole(i *discordgo.InteractionCreate) string { |
