2019-06-11 17:30:57 -06:00
|
|
|
// SupportBot
|
2020-01-26 22:35:45 +00:00
|
|
|
// Created by © 2020 Emerald Services
|
2019-06-11 17:30:57 -06:00
|
|
|
// Command: Report
|
|
|
|
|
|
|
|
|
|
const Discord = require("discord.js");
|
2020-01-26 22:35:45 +00:00
|
|
|
const bot = new Discord.Client();
|
2019-06-11 17:30:57 -06:00
|
|
|
|
2020-01-26 22:35:45 +00:00
|
|
|
const fs = require("fs");
|
|
|
|
|
const yaml = require('js-yaml');
|
|
|
|
|
|
|
|
|
|
const supportbot = yaml.load(fs.readFileSync('./supportbot-config.yml', 'utf8'));
|
2019-06-11 17:30:57 -06:00
|
|
|
|
|
|
|
|
exports.run = (bot, message, args) => {
|
|
|
|
|
|
2020-01-26 22:35:45 +00:00
|
|
|
console.log(`\u001b[33m`, `[${supportbot.Bot_Name}] > `, `\u001b[31;1m`, `${message.author.tag}`, `\u001b[32;1m`, `has executed`, `\u001b[31;1m`, `${supportbot.Prefix}${supportbot.Report_Command}`);
|
|
|
|
|
|
|
|
|
|
let staffGroup = message.guild.roles.find(staffRole => staffRole.name === `${supportbot.StaffRole}`);
|
2019-06-11 17:30:57 -06:00
|
|
|
|
|
|
|
|
const rolemissing = new Discord.RichEmbed()
|
2020-01-26 22:35:45 +00:00
|
|
|
.setDescription(`:x: Looks like this server doesn't have the role **${supportbot.StaffRole}**`)
|
|
|
|
|
.setColor(supportbot.EmbedColour);
|
2019-06-11 17:30:57 -06:00
|
|
|
|
|
|
|
|
if(!staffGroup) {
|
|
|
|
|
message.reply(rolemissing).catch(err => {
|
|
|
|
|
console.error(err);
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
const donothaverole = new Discord.RichEmbed()
|
2020-01-26 22:35:45 +00:00
|
|
|
.setDescription(`:x: Sorry! You cannot use this command with the role **${supportbot.StaffRole}**`)
|
|
|
|
|
.setColor(supportbot.EmbedColour)
|
2019-06-11 17:30:57 -06:00
|
|
|
if(!message.member.roles.has(staffGroup.id)) {
|
|
|
|
|
message.reply(donothaverole);
|
|
|
|
|
} else {
|
|
|
|
|
if(!args[0]) {
|
|
|
|
|
message.reply(":x: Sorry! Please specify the user to report.");
|
|
|
|
|
} else {
|
|
|
|
|
if(!args[1]) {
|
|
|
|
|
message.reply(":x: Sorry! Specify the reason of your report.");
|
|
|
|
|
} else {
|
|
|
|
|
let reportDesc = args.slice(1).join(" ");
|
|
|
|
|
const embed = new Discord.RichEmbed()
|
2020-01-26 22:35:45 +00:00
|
|
|
.setTitle(`${supportbot.Report_Title}`)
|
2019-06-11 17:30:57 -06:00
|
|
|
.setThumbnail(message.author.avatarURL)
|
|
|
|
|
.addField("Report by:", `<@${message.author.id}>`, false)
|
|
|
|
|
.addField("Description:", `${reportDesc}`, false)
|
|
|
|
|
.addField("Reported User:", `${args[0]}`, false)
|
|
|
|
|
.setTimestamp(new Date())
|
2020-01-26 22:35:45 +00:00
|
|
|
.setColor(supportbot.EmbedColour)
|
2019-06-11 17:30:57 -06:00
|
|
|
.setFooter(`${message.author.username}#${message.author.discriminator}`, message.author.displayAvatarURL);
|
2020-01-26 22:35:45 +00:00
|
|
|
let rc = message.guild.channels.find(ReportChannel => ReportChannel.name === `${supportbot.Report_Channel}`)
|
2019-06-11 17:30:57 -06:00
|
|
|
if(!rc) {
|
2020-01-26 22:35:45 +00:00
|
|
|
message.channel.send(`:x: Error! Could not find the logs channel **${supportbot.Report_Channel}**`);
|
2019-06-11 17:30:57 -06:00
|
|
|
} else {
|
|
|
|
|
rc.send(embed);
|
2019-07-24 16:52:30 -06:00
|
|
|
|
2019-06-11 17:30:57 -06:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-01-26 22:35:45 +00:00
|
|
|
};
|
2019-06-11 17:30:57 -06:00
|
|
|
|
|
|
|
|
exports.help = {
|
2020-01-26 22:35:45 +00:00
|
|
|
name: supportbot.Report_Command
|
2019-06-11 17:30:57 -06:00
|
|
|
}
|