From a82fa92bed0d5fbd941b0fed03b7a032fcac7715 Mon Sep 17 00:00:00 2001 From: Cynthia Foxwell Date: Sun, 27 Apr 2025 19:17:27 -0600 Subject: [PATCH] logging: thread events parent channel, debug member search just in case --- src/modules/logging.js | 135 +++++++++++++++++++++++------------------ 1 file changed, 76 insertions(+), 59 deletions(-) diff --git a/src/modules/logging.js b/src/modules/logging.js index 6167c5b..c8cf69c 100644 --- a/src/modules/logging.js +++ b/src/modules/logging.js @@ -195,7 +195,13 @@ events.add("guildAuditLogEntryCreate", "logging", async function (entry) { value: `<@${entry.user.id}> (${formatUsername(entry.user)})`, inline: true, }, - ], + entry.target?.parentID != null && { + name: "Parent Channel", + value: `<#${entry.target.parentID}> (${ + entry.guild.channels.get(entry.target.parentID)?.name ?? "" + })`, + }, + ].filter((x) => !!x), footer: { text: `Thread ID: ${entry.targetID}`, }, @@ -243,6 +249,12 @@ events.add("guildAuditLogEntryCreate", "logging", async function (entry) { name: "Slowmode", value: `\`${entry.before.rate_limit_per_user}\` -> \`${entry.after.rate_limit_per_user}\``, }, + entry.target?.parentID != null && { + name: "Parent Channel", + value: `<#${entry.target.parentID}> (${ + entry.guild.channels.get(entry.target.parentID)?.name ?? "" + })`, + }, ].filter((x) => !!x), footer: { text: `Thread ID: ${entry.targetID}`, @@ -268,7 +280,13 @@ events.add("guildAuditLogEntryCreate", "logging", async function (entry) { value: `<@${entry.user.id}> (${formatUsername(entry.user)})`, inline: true, }, - ], + entry.target?.parentID != null && { + name: "Parent Channel", + value: `<#${entry.target.parentID}> (${ + entry.guild.channels.get(entry.target.parentID)?.name ?? "" + })`, + }, + ].filter((x) => !!x), footer: { text: `Thread ID: ${entry.targetID}`, }, @@ -343,66 +361,65 @@ events.add("guildMemberAdd", "logging", async function (guild, member) { const defaultAvatar = getDefaultAvatar(user.id, user.discriminator ?? 0); const avatar = user.avatar ? CDNEndpoints.USER_AVATAR(user.id, user.avatar) : defaultAvatar; - setTimeout(async () => { - const memberSearch = await hf.bot.requestHandler - .request("POST", `/guilds/${guild.id}/members-search`, true, { - and_query: {user_id: {or_query: [user.id]}}, - or_query: {}, - limit: 5, - }) - .then((res) => res?.members?.[0]) - .catch(() => {}); + const searchReq = await hf.bot.requestHandler + .request("POST", `/guilds/${guild.id}/members-search`, true, { + and_query: {user_id: {or_query: [user.id]}}, + or_query: {}, + limit: 5, + }) + .catch(() => {}); + logger.verbose("logging", `Member search result: ${guild.id} - ${user.id}: ${JSON.stringify(searchReq ?? {})}`); + const memberSearch = searchReq?.members?.[0]; - let inviter; - if (memberSearch?.inviter_id) inviter = await guild.getRESTMember(memberSearch.inviter_id).catch(() => {}); + let inviter; + if (memberSearch?.inviter_id) inviter = await guild.getRESTMember(memberSearch.inviter_id).catch(() => {}); - channel - .createMessage({ - embeds: [ - { - color: COLOR_ADDED, - title: "Member Joined", - description: `<@${user.id}> (${formatUsername(user)})`, - timestamp, - thumbnail: { - url: avatar, - }, - fields: [ - { - name: "Created", - value: ``, - inline: true, - }, - { - name: "Join Method", - value: memberSearch?.join_source_type - ? `${JoinSourceTypeNames[memberSearch.join_source_type]}${ - memberSearch.source_invite_code - ? ` via \`${memberSearch.source_invite_code}\`` - : memberSearch.integration_type - ? ` via \`${ - GuildIntegrationTypes[memberSearch.integration_type] ?? - `` - }\`` - : "" - }` - : "Unknown", - inline: true, - }, - inviter && { - name: "Inviter", - value: `<@${inviter.id}> ${formatUsername(inviter.user)}`, - inline: true, - }, - ].filter((x) => !!x), - footer: { - text: `User ID: ${user.id}`, - }, + channel + .createMessage({ + embeds: [ + { + color: COLOR_ADDED, + title: "Member Joined", + description: `<@${user.id}> (${formatUsername(user)})`, + timestamp, + thumbnail: { + url: avatar, }, - ], - }) - .catch(() => {}); - }, 5000); + fields: [ + { + name: "Created", + value: ``, + inline: true, + }, + memberSearch?.join_source_type && { + name: "Join Method", + value: memberSearch?.join_source_type + ? `${JoinSourceTypeNames[memberSearch.join_source_type]}${ + memberSearch.source_invite_code + ? ` via \`${memberSearch.source_invite_code}\`` + : memberSearch.integration_type + ? ` via \`${ + GuildIntegrationTypes[memberSearch.integration_type] ?? + `` + }\`` + : "" + }` + : "Unknown", + inline: true, + }, + inviter && { + name: "Inviter", + value: `<@${inviter.id}> ${formatUsername(inviter.user)}`, + inline: true, + }, + ].filter((x) => !!x), + footer: { + text: `User ID: ${user.id}`, + }, + }, + ], + }) + .catch(() => {}); }); events.add("guildMemberRemove", "logging", async function (guild, member) {