Files
ECS-FullStack/discord-bot/events/guildMemberRemove.js

27 lines
950 B
JavaScript

const { Events } = require('discord.js');
module.exports = {
name: Events.GuildMemberRemove,
async execute(member) {
try {
const api = require('../api');
// Get the welcome/leave settings from the API
const welcomeLeaveSettings = await api.getWelcomeLeaveSettings(member.guild.id) || { leave: { enabled: false } };
const leave = welcomeLeaveSettings.leave;
if (leave && leave.enabled && leave.channel) {
const channel = member.guild.channels.cache.get(leave.channel);
if (channel) {
try {
const message = (leave.message || '{user} has left the server.').replace('{user}', member.user.toString());
await channel.send(message);
} catch (error) {
console.error(`Could not send leave message to channel ${leave.channel} in guild ${member.guild.id}:`, error);
}
}
}
} catch (error) {
console.error(`Error in guildMemberRemove event for guild ${member.guild.id}:`, error);
}
}
};