aboutsummaryrefslogtreecommitdiff
path: root/xp/member.go
diff options
context:
space:
mode:
Diffstat (limited to 'xp/member.go')
-rw-r--r--xp/member.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/xp/member.go b/xp/member.go
index 016eb5f..2f8d074 100644
--- a/xp/member.go
+++ b/xp/member.go
@@ -204,6 +204,23 @@ func (c *Copaing) Reset() {
gokord.DB.Where("guild_id = ? AND discord_id = ?", c.GuildID, c.DiscordID).Delete(c)
}
+func (c *Copaing) AfterDelete(db *gorm.DB) error {
+ id := c.ID
+ dID := c.DiscordID
+ gID := c.GuildID
+ utils.NewTimer(48*time.Hour, func(stop chan struct{}) {
+ if err := db.Unscoped().Where("id = ?", id).Delete(c).Error; err != nil {
+ utils.SendAlert(
+ "xp/member.go - Removing copaing from database", err.Error(),
+ "discord_id", dID,
+ "guild_id", gID,
+ )
+ }
+ stop <- struct{}{}
+ })
+ return nil
+}
+
func getRedisClient() (*redis.Client, error) {
if redisClient == nil {
var err error