aboutsummaryrefslogtreecommitdiff
path: root/events.go
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2025-09-11 12:58:03 +0200
committerAnhgelus Morhtuuzh <william@herges.fr>2025-09-11 12:58:03 +0200
commitad8f65fec5c7e1e0ec0b3d4e992ffc67a0357661 (patch)
treed46557a9708445f428c5601e3213830cdda8b259 /events.go
parentd869fa2fa47e71a4c0fea40f468d654d03aa6211 (diff)
feat(db): remove xp when copaing leaves
Diffstat (limited to 'events.go')
-rw-r--r--events.go14
1 files changed, 13 insertions, 1 deletions
diff --git a/events.go b/events.go
index 6f15fd8..abf9d03 100644
--- a/events.go
+++ b/events.go
@@ -8,6 +8,7 @@ import (
"git.anhgelus.world/anhgelus/les-copaings-bot/config"
"git.anhgelus.world/anhgelus/les-copaings-bot/exp"
"git.anhgelus.world/anhgelus/les-copaings-bot/user"
+ "github.com/anhgelus/gokord"
"github.com/anhgelus/gokord/logger"
discordgo "github.com/nyttikord/gokord"
)
@@ -122,7 +123,18 @@ func OnLeave(_ *discordgo.Session, e *discordgo.GuildMemberRemove) {
return
}
c := user.GetCopaing(e.User.ID, e.GuildID)
- if err := c.Delete(); err != nil {
+ err := gokord.DB.
+ Where("copaing_id = ? and guild_id = ?", c.ID, e.GuildID).
+ Delete(&user.CopaingXP{}).
+ Error
+ if err != nil {
+ logger.Alert(
+ "events.go - deleting user xp from db", err.Error(),
+ "user_id", e.User.ID,
+ "guild_id", e.GuildID,
+ )
+ }
+ if err = c.Delete(); err != nil {
logger.Alert(
"events.go - deleting user from db", err.Error(),
"user_id", e.User.ID,