diff options
| author | Fuwn <[email protected]> | 2025-09-30 01:37:06 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-09-30 01:37:06 -0700 |
| commit | ed86d5524d16bddf61c072e3a2c0dab7e8701e0a (patch) | |
| tree | 854c37f567300910b3206418769505d8731829d3 /packages | |
| parent | fix(gateway:moderationAgent): Update model response handling (diff) | |
| download | umabotdiscord-ed86d5524d16bddf61c072e3a2c0dab7e8701e0a.tar.xz umabotdiscord-ed86d5524d16bddf61c072e3a2c0dab7e8701e0a.zip | |
feat(listeners:messageEdit): Add additional log outputs
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/gateway/src/listeners/messageEdit.ts | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/packages/gateway/src/listeners/messageEdit.ts b/packages/gateway/src/listeners/messageEdit.ts index d1fd2a8..23be688 100644 --- a/packages/gateway/src/listeners/messageEdit.ts +++ b/packages/gateway/src/listeners/messageEdit.ts @@ -2,6 +2,8 @@ import { Client, Events, EmbedBuilder } from "discord.js"; import { GUILD_ID } from "../constants"; import { sendAuditLog } from "../commands/utilities"; +const EDIT_LOG_CHANNEL_ID = "1422501525678198855"; + export const handleMessageEdit = (client: Client) => { client.on(Events.MessageUpdate, async (oldMessage, newMessage) => { if (newMessage.guildId !== GUILD_ID) return; @@ -10,6 +12,12 @@ export const handleMessageEdit = (client: Client) => { if (oldMessage.content === newMessage.content) return; + const application = await client.application?.fetch(); + const ownerId = application?.owner?.id; + const isBotOrOwner = + newMessage.author?.id === client.user?.id || + newMessage.author?.id === ownerId; + try { const channel = newMessage.channel; const author = newMessage.author; @@ -64,20 +72,33 @@ export const handleMessageEdit = (client: Client) => { let additionalContent = ""; - if (oldContent.length > maxFieldLength) { + if (oldContent.length > maxFieldLength) additionalContent += `BEFORE:\n${oldContent}\n\n`; - } - if (newContent.length > maxFieldLength) { + + if (newContent.length > maxFieldLength) additionalContent += `AFTER:\n${newContent}`; - } - await sendAuditLog(client, embed, additionalContent); + if (isBotOrOwner) { + await sendAuditLog(client, embed, additionalContent); + } else { + await sendAuditLog( + client, + embed, + additionalContent, + EDIT_LOG_CHANNEL_ID, + ); + } } else { embed.addFields( { name: "Before", value: oldContent, inline: false }, { name: "After", value: newContent, inline: false }, ); - await sendAuditLog(client, embed); + + if (isBotOrOwner) { + await sendAuditLog(client, embed); + } else { + await sendAuditLog(client, embed, undefined, EDIT_LOG_CHANNEL_ID); + } } } catch (error) { console.error("Error logging message edit:", error); |