diff --git a/backend/src/plugins/Logs/util/log.ts b/backend/src/plugins/Logs/util/log.ts index 7c205579..7499c0c4 100644 --- a/backend/src/plugins/Logs/util/log.ts +++ b/backend/src/plugins/Logs/util/log.ts @@ -5,6 +5,7 @@ import { TextChannel } from "eris"; import { createChunkedMessage, get, noop } from "../../../utils"; import { getLogMessage } from "./getLogMessage"; import { allowTimeout } from "../../../RegExpRunner"; +import { SavedMessage } from "../../../data/entities/SavedMessage"; const excludedUserProps = ["user", "member", "mod"]; const excludedRoleProps = ["message.member.roles", "member.roles"]; @@ -42,6 +43,15 @@ export async function log(pluginData: GuildPluginData, type: Log } if (opts.excluded_roles) { + if (data?.message instanceof SavedMessage) { + const member = pluginData.guild.members.get(data.message.user_id); + for (const role of member?.roles || []) { + if (opts.excluded_roles.includes(role)) { + continue logChannelLoop; + } + } + } + for (const prop of excludedRoleProps) { const roles = get(data, prop); if (!isRoleArray(roles)) {