diff --git a/backend/src/plugins/ModActions/events/PostAlertOnMemberJoinEvt.ts b/backend/src/plugins/ModActions/events/PostAlertOnMemberJoinEvt.ts index 80b71bb2..8d66902b 100644 --- a/backend/src/plugins/ModActions/events/PostAlertOnMemberJoinEvt.ts +++ b/backend/src/plugins/ModActions/events/PostAlertOnMemberJoinEvt.ts @@ -2,6 +2,7 @@ import { eventListener } from "knub"; import { ModActionsPluginType } from "../types"; import { LogsPlugin } from "../../Logs/LogsPlugin"; import { LogType } from "../../../data/LogType"; +import { TextChannel } from "eris"; /** * Show an alert if a member with prior notes joins the server @@ -17,17 +18,25 @@ export const PostAlertOnMemberJoinEvt = eventListener()( if (!alertChannelId) return; const actions = await pluginData.state.cases.getByUserId(member.id); + const logs = pluginData.getPlugin(LogsPlugin); if (actions.length) { - const alertChannel: any = pluginData.guild.channels.get(alertChannelId); + const alertChannel = pluginData.guild.channels.get(alertChannelId); if (!alertChannel) { - pluginData.getPlugin(LogsPlugin).log(LogType.BOT_ALERT, { + logs.log(LogType.BOT_ALERT, { body: `Unknown \`alert_channel\` configured for \`mod_actions\`: \`${alertChannelId}\``, }); return; } - alertChannel.send( + if (!(alertChannel instanceof TextChannel)) { + logs.log(LogType.BOT_ALERT, { + body: `Non-text channel configured as \`alert_channel\` in \`mod_actions\`: \`${alertChannelId}\``, + }); + return; + } + + alertChannel.createMessage( `<@!${member.id}> (${member.user.username}#${member.user.discriminator} \`${member.id}\`) joined with ${actions.length} prior record(s)`, ); }