Bot-2.0/events/removeMember.js

46 lines
1.5 KiB
JavaScript

const { Events, EmbedBuilder } = require('discord.js');
const fs = require('fs');
module.exports = {
name: Events.GuildMemberRemove,
once: false,
execute(member) {
const { guild, user } = member;
const filePath = `./guilds/guilds-${guild.id}.json`;
if (fs.existsSync(filePath)) {
const data = JSON.parse(fs.readFileSync(filePath));
if (!data.goodbye || !data.goodbyeChannel) return;
let title = data.goodbyeMessage.title;
let description = data.goodbyeMessage.content ? data.goodbyeMessage.content.replace("{{USER}}", user.username) : `Goodbye ${user.username}!`;
const embed = new EmbedBuilder()
.setTitle(title)
.setDescription(description)
.setColor("#ff0000")
.setThumbnail(user.avatarURL())
.setTimestamp();
guild.channels.fetch(data.goodbyeChannel)
.then(channel => {
if (channel) {
channel.send({ embeds: [embed] })
.catch(console.error);
} else {
console.error("Goodbye channel not found.");
}
})
.catch(
data.goodbyeChannel = null,
data.goodbye = false,
fs.writeFileSync(filePath, JSON.stringify(data))
);
}
else
{
return;
}
}
};