mirror of
https://github.com/toast-ts/Daggerbot-TS.git
synced 2024-11-18 00:31:00 -05:00
23 lines
1.3 KiB
TypeScript
23 lines
1.3 KiB
TypeScript
|
import Discord, { AuditLogEvent } from 'discord.js';
|
||
|
import { TClient } from '../client';
|
||
|
export default {
|
||
|
name: 'guildBanAdd',
|
||
|
execute: async(client:TClient, member:Discord.GuildMember)=>{
|
||
|
const fetchBanlog = await member.guild.fetchAuditLogs({
|
||
|
limit: 1,
|
||
|
type: AuditLogEvent.MemberBanAdd
|
||
|
})
|
||
|
const banLog = fetchBanlog.entries.first();
|
||
|
if (!banLog) return console.log(`${member.user.tag} was banned from ${member.guild.name} but no audit log for this user.`)
|
||
|
const {executor, target, reason } = banLog;
|
||
|
if (target.id == member.user.id) {
|
||
|
const embed = new client.embed().setColor(client.config.embedColorRed).setTimestamp().setThumbnail(member.user.displayAvatarURL({size: 2048})).setTitle(`Member Banned: ${target.tag}`).setDescription(`🔹 **User**\n<@${target.id}>\n\`${target.id}\``).addFields(
|
||
|
{name: '🔹 Moderator', value: `<@${executor.id}> (\`${executor.id}\`)`},
|
||
|
{name: '🔹 Reason', value: `${reason == null ? 'Reason unspecified': reason}`}
|
||
|
);
|
||
|
(client.channels.resolve(client.config.mainServer.channels.logs) as Discord.TextChannel).send({embeds: [embed]})
|
||
|
} else {
|
||
|
console.log(`${target.tag} was banned from ${member.guild.name} but no audit log could be fetched.`)
|
||
|
}
|
||
|
}
|
||
|
}
|