diff --git a/Helpers/BanHelpers.cs b/Helpers/BanHelpers.cs index b0c9d05..e110029 100644 --- a/Helpers/BanHelpers.cs +++ b/Helpers/BanHelpers.cs @@ -76,6 +76,18 @@ public static async Task BanFromServerAsync(ulong targetUserId, string rea logOut += $"\nChannel: {channel.Mention}"; _ = FindModmailThreadAndSendMessage(guild, $"User ID: {targetUserId}", logOut); + + // Remove user message tracking + if (await Program.db.SetContainsAsync("trackedUsers", targetUserId)) + { + await Program.db.SetRemoveAsync("trackedUsers", targetUserId); + var channelId = Program.db.HashGet("trackingThreads", targetUserId); + DiscordThreadChannel thread = (DiscordThreadChannel)await Program.discord.GetChannelAsync((ulong)channelId); + await thread.ModifyAsync(thread => + { + thread.IsArchived = true; + }); + } } catch { @@ -144,6 +156,19 @@ public static async Task BanSilently(DiscordGuild targetGuild, ulong targe try { await targetGuild.BanMemberAsync(targetUserId, TimeSpan.FromDays(7), reason); + + // Remove user message tracking + if (await Program.db.SetContainsAsync("trackedUsers", targetUserId)) + { + await Program.db.SetRemoveAsync("trackedUsers", targetUserId); + var channelId = Program.db.HashGet("trackingThreads", targetUserId); + DiscordThreadChannel thread = (DiscordThreadChannel)await Program.discord.GetChannelAsync((ulong)channelId); + await thread.ModifyAsync(thread => + { + thread.IsArchived = true; + }); + } + return true; } catch