From d4f12ca1c80bf7e327fccd6a8df853fc45063ef8 Mon Sep 17 00:00:00 2001 From: almeidx Date: Mon, 27 Jul 2020 18:29:30 +0100 Subject: [PATCH 1/2] feat: added ban/unban reasons to their respective api calls --- backend/src/plugins/ModActions/commands/ForcebanCmd.ts | 2 +- backend/src/plugins/ModActions/commands/MassBanCmd.ts | 2 +- backend/src/plugins/ModActions/commands/UnbanCmd.ts | 5 ++--- .../src/plugins/ModActions/functions/actualKickMemberCmd.ts | 2 +- backend/src/plugins/ModActions/functions/banUserId.ts | 2 +- 5 files changed, 6 insertions(+), 7 deletions(-) diff --git a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts index d75d158c..01e80ec8 100644 --- a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts +++ b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts @@ -64,7 +64,7 @@ export const ForcebanCmd = modActionsCommand({ pluginData.state.serverLogs.ignoreLog(LogType.MEMBER_BAN, user.id); try { - await pluginData.guild.banMember(user.id, 1); + await pluginData.guild.banMember(user.id, 1, reason); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to forceban member"); return; diff --git a/backend/src/plugins/ModActions/commands/MassBanCmd.ts b/backend/src/plugins/ModActions/commands/MassBanCmd.ts index 26f1d6c1..612ffd3f 100644 --- a/backend/src/plugins/ModActions/commands/MassBanCmd.ts +++ b/backend/src/plugins/ModActions/commands/MassBanCmd.ts @@ -66,7 +66,7 @@ export const MassbanCmd = modActionsCommand({ const casesPlugin = pluginData.getPlugin(CasesPlugin); for (const userId of args.userIds) { try { - await pluginData.guild.banMember(userId, 1); + await pluginData.guild.banMember(userId, 1, banReason); await casesPlugin.createCase({ userId, diff --git a/backend/src/plugins/ModActions/commands/UnbanCmd.ts b/backend/src/plugins/ModActions/commands/UnbanCmd.ts index 32754c9c..7c88ecf3 100644 --- a/backend/src/plugins/ModActions/commands/UnbanCmd.ts +++ b/backend/src/plugins/ModActions/commands/UnbanCmd.ts @@ -42,17 +42,16 @@ export const UnbanCmd = modActionsCommand({ } pluginData.state.serverLogs.ignoreLog(LogType.MEMBER_UNBAN, user.id); + const reason = formatReasonWithAttachments(args.reason, msg.attachments); try { ignoreEvent(pluginData, IgnoredEventType.Unban, user.id); - await pluginData.guild.unbanMember(user.id); + await pluginData.guild.unbanMember(user.id, reason); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to unban member; are you sure they're banned?"); return; } - const reason = formatReasonWithAttachments(args.reason, msg.attachments); - // Create a case const casesPlugin = pluginData.getPlugin(CasesPlugin); const createdCase = await casesPlugin.createCase({ diff --git a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts index afbae794..8be8cae9 100644 --- a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts +++ b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts @@ -88,7 +88,7 @@ export async function actualKickMemberCmd( ignoreEvent(pluginData, IgnoredEventType.Unban, memberToKick.id); try { - await pluginData.guild.unbanMember(memberToKick.id); + await pluginData.guild.unbanMember(memberToKick.id, reason); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to unban the user after banning them (-clean)"); } diff --git a/backend/src/plugins/ModActions/functions/banUserId.ts b/backend/src/plugins/ModActions/functions/banUserId.ts index 7c8a4f94..3d4c1a41 100644 --- a/backend/src/plugins/ModActions/functions/banUserId.ts +++ b/backend/src/plugins/ModActions/functions/banUserId.ts @@ -40,7 +40,7 @@ export async function banUserId( ignoreEvent(pluginData, IgnoredEventType.Ban, userId); try { const deleteMessageDays = Math.min(30, Math.max(0, banOptions.deleteMessageDays ?? 1)); - await pluginData.guild.banMember(userId, deleteMessageDays); + await pluginData.guild.banMember(userId, deleteMessageDays, reason); } catch (e) { return { status: "failed", From ecc25bd2e351a060cab20cda53f4d62b5f9b24cc Mon Sep 17 00:00:00 2001 From: almeidx Date: Tue, 28 Jul 2020 21:27:36 +0100 Subject: [PATCH 2/2] fix: encode reason --- backend/src/plugins/ModActions/commands/ForcebanCmd.ts | 2 +- backend/src/plugins/ModActions/commands/MassBanCmd.ts | 2 +- backend/src/plugins/ModActions/commands/UnbanCmd.ts | 2 +- backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts | 2 +- backend/src/plugins/ModActions/functions/banUserId.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts index 01e80ec8..47682a22 100644 --- a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts +++ b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts @@ -64,7 +64,7 @@ export const ForcebanCmd = modActionsCommand({ pluginData.state.serverLogs.ignoreLog(LogType.MEMBER_BAN, user.id); try { - await pluginData.guild.banMember(user.id, 1, reason); + await pluginData.guild.banMember(user.id, 1, encodeURIComponent(reason)); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to forceban member"); return; diff --git a/backend/src/plugins/ModActions/commands/MassBanCmd.ts b/backend/src/plugins/ModActions/commands/MassBanCmd.ts index 612ffd3f..92404d1e 100644 --- a/backend/src/plugins/ModActions/commands/MassBanCmd.ts +++ b/backend/src/plugins/ModActions/commands/MassBanCmd.ts @@ -66,7 +66,7 @@ export const MassbanCmd = modActionsCommand({ const casesPlugin = pluginData.getPlugin(CasesPlugin); for (const userId of args.userIds) { try { - await pluginData.guild.banMember(userId, 1, banReason); + await pluginData.guild.banMember(userId, 1, encodeURIComponent(banReason)); await casesPlugin.createCase({ userId, diff --git a/backend/src/plugins/ModActions/commands/UnbanCmd.ts b/backend/src/plugins/ModActions/commands/UnbanCmd.ts index 7c88ecf3..a61d752b 100644 --- a/backend/src/plugins/ModActions/commands/UnbanCmd.ts +++ b/backend/src/plugins/ModActions/commands/UnbanCmd.ts @@ -46,7 +46,7 @@ export const UnbanCmd = modActionsCommand({ try { ignoreEvent(pluginData, IgnoredEventType.Unban, user.id); - await pluginData.guild.unbanMember(user.id, reason); + await pluginData.guild.unbanMember(user.id, encodeURIComponent(reason)); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to unban member; are you sure they're banned?"); return; diff --git a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts index 8be8cae9..605c5f6a 100644 --- a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts +++ b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts @@ -88,7 +88,7 @@ export async function actualKickMemberCmd( ignoreEvent(pluginData, IgnoredEventType.Unban, memberToKick.id); try { - await pluginData.guild.unbanMember(memberToKick.id, reason); + await pluginData.guild.unbanMember(memberToKick.id, encodeURIComponent(reason)); } catch (e) { sendErrorMessage(pluginData, msg.channel, "Failed to unban the user after banning them (-clean)"); } diff --git a/backend/src/plugins/ModActions/functions/banUserId.ts b/backend/src/plugins/ModActions/functions/banUserId.ts index 3d4c1a41..5a50644a 100644 --- a/backend/src/plugins/ModActions/functions/banUserId.ts +++ b/backend/src/plugins/ModActions/functions/banUserId.ts @@ -40,7 +40,7 @@ export async function banUserId( ignoreEvent(pluginData, IgnoredEventType.Ban, userId); try { const deleteMessageDays = Math.min(30, Math.max(0, banOptions.deleteMessageDays ?? 1)); - await pluginData.guild.banMember(userId, deleteMessageDays, reason); + await pluginData.guild.banMember(userId, deleteMessageDays, encodeURIComponent(reason)); } catch (e) { return { status: "failed",