aboutsummaryrefslogtreecommitdiff
path: root/commands
diff options
context:
space:
mode:
authorWilliam Hergès <william@herges.fr>2025-09-27 17:34:38 +0200
committerWilliam Hergès <william@herges.fr>2025-09-27 17:34:38 +0200
commitcfdba5f417bb31aac564d13becc09874f17d075d (patch)
tree5f79f01bdab1fae108ca93be05e2c7fd8898bc08 /commands
parentdca669455f4746666fd3a1177a4db2eaa5320cb7 (diff)
build(gokord): bump to latest nightly
Diffstat (limited to 'commands')
-rw-r--r--commands/config.go6
-rw-r--r--commands/credits.go2
-rw-r--r--commands/rank.go14
-rw-r--r--commands/reset.go12
-rw-r--r--commands/stats.go31
-rw-r--r--commands/top.go8
6 files changed, 33 insertions, 40 deletions
diff --git a/commands/config.go b/commands/config.go
index 7ffd4af..336e66a 100644
--- a/commands/config.go
+++ b/commands/config.go
@@ -130,7 +130,7 @@ func ConfigCommand(
err := s.InteractionAPI().Respond(i.Interaction, ConfigResponse(i))
if err != nil {
- s.LogError(err, "config/guild.go - Sending config")
+ s.Logger().Error("sending config", "error", err)
}
}
@@ -145,7 +145,7 @@ func ConfigMessageComponent(
err := s.InteractionAPI().Respond(i.Interaction, response)
if err != nil {
- s.LogError(err, "sending config")
+ s.Logger().Error("sending config", "error", err)
}
}
@@ -160,6 +160,6 @@ func ConfigModal(
err := s.InteractionAPI().Respond(i.Interaction, response)
if err != nil {
- s.LogError(err, "sending config")
+ s.Logger().Error("sending config", "error", err)
}
}
diff --git a/commands/credits.go b/commands/credits.go
index b303834..340ea57 100644
--- a/commands/credits.go
+++ b/commands/credits.go
@@ -15,6 +15,6 @@ func Credits(s bot.Session, _ *event.InteractionCreate, _ cmd.OptionMap, resp *c
msg += "- [Inter](<https://github.com/rsms/inter>)"
err := resp.SetMessage(msg).Send()
if err != nil {
- s.LogError(err, "sending credits")
+ s.Logger().Error("sending credits", "error", err)
}
}
diff --git a/commands/rank.go b/commands/rank.go
index 8f3090f..4080864 100644
--- a/commands/rank.go
+++ b/commands/rank.go
@@ -20,28 +20,28 @@ func Rank(s bot.Session, i *event.InteractionCreate, optMap cmd.OptionMap, resp
if u.Bot {
err = resp.SetMessage("Imagine si les bots avaient un niveau :rolling_eyes:").IsEphemeral().Send()
if err != nil {
- s.LogError(err, "reply error user is a bot")
+ s.Logger().Error("reply error user is a bot", "error", err)
}
return
}
m, err = s.GuildAPI().Member(i.GuildID, u.ID)
if err != nil {
- s.LogError(err, "Fetching guild member %s in %s", u.Username, i.GuildID)
+ s.Logger().Error("fetching guild member", "error", err, "user", u.Username, "guild", i.GuildID)
err = resp.SetMessage("Erreur : impossible de récupérer le membre").IsEphemeral().Send()
if err != nil {
- s.LogError(err, "reply error fetching guild member")
+ s.Logger().Error("reply error fetching guild member", "error", err)
}
return
}
c = user.GetCopaing(u.ID, i.GuildID) // current user = member targeted by member who wrote /rank
msg = fmt.Sprintf("Le niveau de %s", m.DisplayName())
}
- xp, err := c.GetXP()
+ xp, err := c.GetXP(s.Logger())
if err != nil {
- s.LogError(err, "fetching xp for copaing %s in %s", c.ID, i.GuildID)
+ s.Logger().Error("fetching xp", "error", err, "copaing", c.ID, "guild", i.GuildID)
err = resp.SetMessage("Erreur : impossible de récupérer l'XP").IsEphemeral().Send()
if err != nil {
- s.LogError(err, "reply error fetching xp")
+ s.Logger().Error("reply error fetching xp", "error", err)
}
return
}
@@ -55,6 +55,6 @@ func Rank(s bot.Session, i *event.InteractionCreate, optMap cmd.OptionMap, resp
nxtLvlXP-xp,
)).Send()
if err != nil {
- s.LogError(err, "sending rank")
+ s.Logger().Error("sending rank", "error", err)
}
}
diff --git a/commands/reset.go b/commands/reset.go
index 7caa238..21bfeb7 100644
--- a/commands/reset.go
+++ b/commands/reset.go
@@ -12,7 +12,7 @@ func Reset(s bot.Session, i *event.InteractionCreate, _ cmd.OptionMap, resp *cmd
var copaings []*user.Copaing
gokord.DB.Where("guild_id = ?", i.GuildID).Delete(&copaings)
if err := resp.IsEphemeral().SetMessage("L'XP a été reset.").Send(); err != nil {
- s.LogError(err, "sending reset success")
+ s.Logger().Error("sending reset success", "error", err)
}
}
@@ -21,26 +21,26 @@ func ResetUser(s bot.Session, i *event.InteractionCreate, optMap cmd.OptionMap,
v, ok := optMap["user"]
if !ok {
if err := resp.SetMessage("Le user n'a pas été renseigné.").Send(); err != nil {
- s.LogError(err, "sending error copaing not set")
+ s.Logger().Error("sending error copaing not set", "error", err)
}
return
}
m := v.UserValue(s.UserAPI())
if m.Bot {
if err := resp.SetMessage("Les bots n'ont pas de niveau :upside_down:").Send(); err != nil {
- s.LogError(err, "sending error bot does not have xp")
+ s.Logger().Error("sending error bot does not have xp", "error", err)
}
return
}
err := user.GetCopaing(m.ID, i.GuildID).Delete()
if err != nil {
- s.LogError(err, "deleting copaings %s in %s", m.Username, i.GuildID)
+ s.Logger().Error("deleting copaing", "error", err, "user", m.Username, "guild", i.GuildID)
err = resp.SetMessage("Erreur : impossible de reset l'utilisateur").Send()
if err != nil {
- s.LogError(err, "sending error while deleting")
+ s.Logger().Error("sending error while deleting", "error", err)
}
}
if err = resp.SetMessage("Le user bien été reset.").Send(); err != nil {
- s.LogError(err, "sending reset success")
+ s.Logger().Error("sending reset success", "error", err)
}
}
diff --git a/commands/stats.go b/commands/stats.go
index 2c22f0d..4fc35ae 100644
--- a/commands/stats.go
+++ b/commands/stats.go
@@ -57,7 +57,7 @@ func Stats(s bot.Session, i *event.InteractionCreate, opt cmd.OptionMap, resp *c
if in < 1 || uint(in) > cfg.DaysXPRemains {
msg := fmt.Sprintf("Nombre de jours invalide. Il doit être strictement positif et inférieur à %d", cfg.DaysXPRemains)
if err := resp.SetMessage(msg).IsEphemeral().Send(); err != nil {
- s.LogError(err, "sending error invalid days")
+ s.Logger().Error("sending error invalid days", "error", err)
}
return
}
@@ -65,7 +65,7 @@ func Stats(s bot.Session, i *event.InteractionCreate, opt cmd.OptionMap, resp *c
}
err := resp.IsDeferred().Send()
if err != nil {
- s.LogError(err, "sending deferred")
+ s.Logger().Error("sending deferred", "error", err)
return
}
go func() {
@@ -76,16 +76,16 @@ func Stats(s bot.Session, i *event.InteractionCreate, opt cmd.OptionMap, resp *c
w, err = statsAll(s, i, days)
}
if err != nil {
- s.LogError(err, "generating stats in %s", i.GuildID)
+ s.Logger().Error("generating stats", "error", err, "guild", i.GuildID)
if err = resp.IsEphemeral().SetMessage("Il y a eu une erreur...").Send(); err != nil {
- s.LogError(err, "sending error occurred")
+ s.Logger().Error("sending error occurred", "error", err)
}
return
}
b := new(bytes.Buffer)
_, err = w.WriteTo(b)
if err != nil {
- s.LogError(err, "writing png")
+ s.Logger().Error("writing png", "error", err)
}
err = resp.AddFile(&channel.File{
Name: "plot.png",
@@ -93,7 +93,7 @@ func Stats(s bot.Session, i *event.InteractionCreate, opt cmd.OptionMap, resp *c
Reader: b,
}).Send()
if err != nil {
- s.LogError(err, "sending stats")
+ s.Logger().Error("sending stats", "error", err)
}
}()
}
@@ -122,7 +122,7 @@ func stats(s bot.Session, i *event.InteractionCreate, days int, execSql func(bef
if gokord.Debug {
var rawCopaingData []*user.CopaingXP
if err := execSql("SELECT * FROM copaing_xps ", "").Scan(&rawCopaingData).Error; err != nil {
- s.LogError(err, "fetching result")
+ s.Logger().Error("fetching result", "error", err)
return nil, err
}
rawData = make([]*data, len(rawCopaingData))
@@ -138,7 +138,7 @@ func stats(s bot.Session, i *event.InteractionCreate, days int, execSql func(bef
if err := execSql(
`SELECT "created_at"::date::text, sum("xp") as xp, "copaing_id" FROM copaing_xps `, ` GROUP BY "created_at"::date, "copaing_id"`,
).Scan(&rawDbData).Error; err != nil {
- s.LogError(err, "fetching result")
+ s.Logger().Error("fetching result", "error", err)
return nil, err
}
rawData = make([]*data, len(rawDbData))
@@ -160,10 +160,10 @@ func stats(s bot.Session, i *event.InteractionCreate, days int, execSql func(bef
var cp user.Copaing
if err := gokord.DB.First(&cp, raw.CopaingID).Error; err != nil {
if !errors.Is(err, gorm.ErrRecordNotFound) {
- s.LogError(err, "finding copaing %d", raw.CopaingID)
+ s.Logger().Error("finding copaing", "error", err, "copaing", raw.CopaingID)
return nil, err
}
- s.LogWarn("Copaing %d not found, skipping", raw.CopaingID)
+ s.Logger().Warn("copaing not found, skipping", "copaing", raw.CopaingID)
continue
}
copaings[raw.CopaingID] = &cp
@@ -222,7 +222,7 @@ func generatePlot(s bot.Session, i *event.InteractionCreate, copaings map[int]*u
for in, c := range copaings {
m, err := s.GuildAPI().Member(i.GuildID, c.DiscordID)
if err != nil {
- s.LogError(err, "fetching guild member")
+ s.Logger().Error("fetching guild member", "error", err)
return nil, err
}
slices.SortFunc(stats[in], func(a, b plotter.XY) int {
@@ -236,7 +236,6 @@ func generatePlot(s bot.Session, i *event.InteractionCreate, copaings map[int]*u
})
l, _, err := plotter.NewLinePoints(plotter.XYs(stats[in]))
if err != nil {
- s.LogError(err, "adding line points")
return nil, err
}
l.Color = colors[cnt%len(colors)]
@@ -251,11 +250,5 @@ func generatePlot(s bot.Session, i *event.InteractionCreate, copaings map[int]*u
p.Legend.Add(m.DisplayName(), l)
cnt++
}
- w, err := p.WriterTo(12*vg.Inch, 8*vg.Inch, "png")
-
- if err != nil {
- s.LogError(err, "generating png")
- return nil, err
- }
- return w, nil
+ return p.WriterTo(12*vg.Inch, 8*vg.Inch, "png")
}
diff --git a/commands/top.go b/commands/top.go
index 751f7fa..bb08144 100644
--- a/commands/top.go
+++ b/commands/top.go
@@ -16,7 +16,7 @@ import (
func Top(s bot.Session, i *event.InteractionCreate, _ cmd.OptionMap, resp *cmd.ResponseBuilder) {
err := resp.IsDeferred().Send()
if err != nil {
- s.LogError(err, "sending deferred")
+ s.Logger().Error("sending deferred", "error", err)
return
}
embeds := make([]*channel.MessageEmbed, 3)
@@ -24,9 +24,9 @@ func Top(s bot.Session, i *event.InteractionCreate, _ cmd.OptionMap, resp *cmd.R
fn := func(str string, n uint, d int, id int) {
defer wg.Done()
- tops, err := user.GetBestXP(i.GuildID, n, d)
+ tops, err := user.GetBestXP(s.Logger(), i.GuildID, n, d)
if err != nil {
- s.LogError(err, "fetching best xp, n: %d, d: %d, id: %d, guild: %s", n, d, id, i.GuildID)
+ s.Logger().Error("fetching best xp", "error", err, "n", n, "d", d, "id", id, "guild", i.GuildID)
embeds[id] = &channel.MessageEmbed{
Title: str,
Description: "Erreur : impossible de récupérer la liste",
@@ -60,7 +60,7 @@ func Top(s bot.Session, i *event.InteractionCreate, _ cmd.OptionMap, resp *cmd.R
}
err = resp.Send()
if err != nil {
- s.LogError(err, "sending response top")
+ s.Logger().Error("sending response top", "error", err)
}
}()
}