const { Events, EmbedBuilder, Guild, ButtonBuilder, ButtonStyle, ActionRowBuilder, WebhookClient } = require('discord.js'); const ExtendedClient = require('../../class/ExtendedClient'); const { time } = require('../../functions/index'); const blacklist = require('../../schemas/blacklist'); const config = require('../../config'); module.exports = { event: Events.GuildMemberAdd, /** * * @param {ExtendedClient} client * @returns */ run: async (client, member) => { const acc = member.user.createdAt; const r = time(acc, 'D'); const d = time(acc, 'R'); const blacklist_button = new ButtonBuilder() .setCustomId(`blacklist_${member.id}`) .setLabel('Accesso Negato [Metti in blacklist]') .setEmoji(config.emoji.black_world) .setStyle(ButtonStyle.Primary); const row1 = new ActionRowBuilder().addComponents(blacklist_button); const avatarUrl = member.user.displayAvatarURL(); const em_log = new EmbedBuilder() .setTitle(`${config.emoji.freccia_verde} MEMBER JOINED`) .setColor('Green') .setThumbnail(avatarUrl) .setTimestamp() .setFooter({ text: 'Membro Unito - EMRL Log Sistem', iconURL: config.loghi.principale}) .setDescription(`${config.emoji.membro_ds} ${member} è entrato nel server`) .addFields( { name: `${config.emoji.canale_animato} __Tag__ utente e Id`, value: ` ${member.user.tag} | \`${member.id}\``, inline: true }, { name: 'Creazione Account', value: `${r} ${d}`, inline: true }, ); const webhook = new WebhookClient({ url: process.env.WEBHOOK_LOG_MEMBER }); await blacklist.findOne({ BlacklistedID: member.id }).then(async(data) => { if (data) { blacklist_button.setLabel('Membro già in blacklist [RUOLI MODIFICATI]'); blacklist_button.setDisabled(true); await member.roles.add([config.ruoli.accesso_negato]).then(member => member.roles.remove([config.ruoli.attesa_wl])); await webhook.send({ content: config.ruoli.staff, embeds: [em_log], username: 'Log Members - Emeral RP', avatarURL: config.loghi.principale, components: [row1] }); } else if(!data) { await webhook.send({ content: config.ruoli.staff, embeds: [em_log], username: 'Log Members - Emeral RP', avatarURL: config.loghi.principale, components: [row1] }); } }); } }