const GuildData = require('../models/guild'); const Responses = require('../models/responses'); const sendResponse = require('../util/response/sendresponse'); const Mute = require('../models/mute'); const chalk = require('chalk'); const Discord = require('discord.js'); module.exports = async (client, member) => { let tg = await GuildData.findOne({gid: member.guild.id}); let tr = await Responses.findOne({gid: member.guild.id}); if ( tr && tr.bindings.has('leave') && tr.responses.has(tr.bindings.get('leave')) && tg.lch.length && member.guild.channels.cache.has(tg.lch) && member.guild.channels.cache.get(tg.lch).permissionsFor(client.user.id).has("SEND_MESSAGES") && !client.users.cache.get(member.id).bot ) { try {member.guild.channels.cache.get(tg.lch).send(await sendResponse(member, member.guild.channels.cache.get(tg.lch), 'xdlol', client, tr.responses.get(tr.bindings.get('leave'))));} catch {} } let cm = await Mute.findOne({uid: member.id}); if (cm) { member.guild.members.ban(member.id) //client.users.cache.get(client.developers[0]).send(`Attempted to ban ${member.displayName}`) .then(() => member.guild.channels.cache.get('807471984806985729').send("<@330547934951112705>", new Discord.MessageEmbed() .setAuthor(member.displayName, client.users.cache.get(member.id).avatarURL()) .setTitle("Mute Evasion Detected!") .setDescription(`<@${member.id}> has evaded their mute, and I've automatically banned them!`) .addField("Original Mod", `<@${cm.id}>`) .setColor('c77dff') .setFooter("Luno", client.user.avatarURL()) .setTimestamp() )).catch(e => { console.error(`\n${chalk.red('[ERROR]')} >> ${chalk.yellow(`At [${date}] | Occurred while trying to ban a member for mute evasion`)}`, e); member.guild.channels.cache.get('807471984806985729').send("<@&807643404904562738> **Failed automatic mute evasion ban!**", new Discord.MessageEmbed() .setAuthor(member.displayName, client.users.cache.get(member.id).avatarURL()) .setTitle("Mute Evasion Detected!") .setDescription(`<@${member.id}> has evaded their mute, but I was not able to automatically ban them! Their user ID is \`${member.id}\`.`) .addField("Original Mod", `<@${cm.id}>`) .setColor('c77dff') .setFooter("Luno", client.user.avatarURL()) .setTimestamp() ); }); } client.user.setActivity(`over ${client.guilds.cache.get(client.misc.neptune).members.cache.size} members!`, {type: "WATCHING"}); };