summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/gateway/src/listeners/messageDeletion.ts27
1 files changed, 21 insertions, 6 deletions
diff --git a/packages/gateway/src/listeners/messageDeletion.ts b/packages/gateway/src/listeners/messageDeletion.ts
index 9c9c6f1..54a4ddf 100644
--- a/packages/gateway/src/listeners/messageDeletion.ts
+++ b/packages/gateway/src/listeners/messageDeletion.ts
@@ -34,6 +34,9 @@ export const handleMessageDeletion = (client: Client) => {
if (isPrivilegedAuthor) return;
+ let deleterId: string | undefined;
+ let deleterUser: any = null;
+
try {
const auditLogs = await guild?.fetchAuditLogs({
limit: 1,
@@ -42,15 +45,18 @@ export const handleMessageDeletion = (client: Client) => {
const deletionLog = auditLogs?.entries.first();
if (deletionLog) {
- const deleterId = deletionLog.executor?.id;
+ deleterId = deletionLog.executor?.id;
+
const isPrivilegedDeleter =
deleterId === client.user?.id ||
deleterId === ownerId ||
deleterId === serverOwnerId ||
deleterId === BOT_ID;
- const deleterUser = deleterId
+
+ deleterUser = deleterId
? await client.users.fetch(deleterId).catch(() => null)
: null;
+
const isBotDeleter = deleterUser?.bot === true;
if (isPrivilegedDeleter || isBotDeleter) return;
@@ -89,12 +95,21 @@ export const handleMessageDeletion = (client: Client) => {
value: `[${deletedMessage.id}](https://discord.com/channels/${deletedMessage.guildId}/${channel.id}/${deletedMessage.id})`,
inline: true,
},
- )
- .setTimestamp()
- .setFooter({
- text: `Guild: ${deletedMessage.guild?.name || "Unknown"}`,
+ );
+
+ if (deleterId && deleterId !== author?.id)
+ embed.addFields({
+ name: "Deleted By",
+ value: deleterUser
+ ? `<@${deleterId}>`
+ : `Unknown User (${deleterId})`,
+ inline: true,
});
+ embed.setTimestamp().setFooter({
+ text: `Guild: ${deletedMessage.guild?.name || "Unknown"}`,
+ });
+
if (content.length <= 1024) {
embed.addFields({ name: "Content", value: content, inline: false });
} else {