cardboardbox/commands/Moderation/ban.js

34 lines
1.2 KiB
JavaScript
Raw Normal View History

2020-02-04 16:12:23 +00:00
exports.run = async (client, message, args, level) => {
2020-02-04 16:15:16 +00:00
const user = message.mentions.users.first() || client.users.get("username", args[0]).id;
parseUser(message, user);
2020-02-05 18:29:35 +00:00
2020-02-04 16:15:16 +00:00
const modlog = client.channels.find('name', config.modLogChannel);
const caseNum = await caseNumber(client, modlog);
2020-02-05 18:29:35 +00:00
2020-02-04 16:15:16 +00:00
if (!modlog) return message.reply('I cannot find a valid modlog channel.');
if (message.mentions.users.size < 1) return message.reply('You must mention someone to ban them.').catch(console.error);
// message.guild.ban(user, 2);
2020-02-04 16:12:23 +00:00
2020-02-04 16:15:16 +00:00
const reason = args.splice(1, args.length).join(' ') || `Awaiting moderator's input. Use ${settings.prefix}reason ${caseNum} <reason>.`;
const embed = new RichEmbed()
2020-02-05 18:29:35 +00:00
.setColor(0x2f3136)
2020-02-04 16:15:16 +00:00
.setTimestamp()
.setDescription(`**Action:** Ban\n**Target:** ${user.tag}\n**Moderator:** ${message.author.tag}\n**Reason:** ${reason}`)
.setFooter(`Case ${caseNum}`);
return client.channels.get(modlog.id).send({embed});
2020-02-04 16:12:23 +00:00
};
exports.conf = {
enabled: true,
2020-02-06 19:25:06 +00:00
guildOnly: true,
2020-02-04 16:12:23 +00:00
aliases: [],
2020-02-06 19:21:09 +00:00
permLevel: "Administrator"
2020-02-04 16:12:23 +00:00
};
exports.help = {
name: "ban",
category: "Moderation",
description: "You've been hit by Banny Billy!",
usage: "ban <user> <reason>"
};