Files
SupportBot-Dashboard/commands/announce.js
T

54 lines
2.2 KiB
JavaScript
Raw Normal View History

2019-07-24 16:52:30 -06:00
// SupportBot
2020-01-25 13:37:25 +00:00
// Created by © 2020 Emerald Services
// Command: Announce (including @everyone)
2019-07-24 16:52:30 -06:00
const Discord = require("discord.js");
2020-01-25 13:37:25 +00:00
const bot = new Discord.Client();
2020-01-26 22:35:45 +00:00
const fs = require("fs")
2020-01-25 16:59:35 +00:00
const yaml = require('js-yaml');
2019-07-24 16:52:30 -06:00
2020-01-25 16:59:35 +00:00
const supportbot = yaml.load(fs.readFileSync('./supportbot-config.yml', 'utf8'));
2019-07-24 16:52:30 -06:00
2020-01-25 13:37:25 +00:00
exports.run = (bot, message, args) => {
2019-07-24 16:52:30 -06:00
message.delete();
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.Announcement_Command}`);
2020-01-25 13:37:25 +00:00
2020-01-25 16:59:35 +00:00
let staffGroup = message.guild.roles.find(staffRole => staffRole.name === `${supportbot.StaffRole}`)
2019-07-24 16:52:30 -06:00
const rolemissing = new Discord.RichEmbed()
2020-01-25 16:59:35 +00:00
.setDescription(`:x: Looks like this server doesn't have the role **${supportbot.StaffRole}**`)
.setColor(supportbot.EmbedColour)
2019-07-24 16:52:30 -06:00
if (!staffGroup) return message.reply(rolemissing).catch(err=>{console.error(err)})
const donothaverole = new Discord.RichEmbed()
2020-01-25 16:59:35 +00:00
.setDescription(`:x: Sorry! You cannot use this command with the role **${supportbot.StaffRole}**`)
.setColor(supportbot.EmbedColour)
2019-07-24 16:52:30 -06:00
if (!message.member.roles.has(staffGroup.id)) return message.reply(donothaverole)
const embed = new Discord.RichEmbed()
2020-01-25 16:59:35 +00:00
.setTitle(`${supportbot.Announcement_Title}`)
2019-07-24 16:52:30 -06:00
.setDescription(args.join(" "))
.setTimestamp()
2020-01-25 16:59:35 +00:00
.setColor(supportbot.EmbedColour)
2019-07-24 16:52:30 -06:00
.setFooter(`${message.author.username}#${message.author.discriminator}`, message.author.displayAvatarURL)
2020-01-25 16:59:35 +00:00
let ac = message.guild.channels.find(AnnounceChannel => AnnounceChannel.name === `${supportbot.Announcement_Channel}`)
if(!ac) return message.channel.send(`:x: Error! Could not find the logs channel **${supportbot.Announcement_Channel}**`)
2019-07-24 16:52:30 -06:00
2019-08-04 20:42:35 -06:00
ac.send("@everyone").then((msg) => {
ac.send(embed);
});
2019-07-24 16:52:30 -06:00
2020-01-25 13:37:25 +00:00
const AccSuccessEmbed = new Discord.RichEmbed()
.setTitle("Announcement Created")
.setDescription(`👍 Successfully sent your announcement to <#${ac.id}>`)
2020-01-25 16:59:35 +00:00
.setColor(supportbot.EmbedColour)
2020-01-26 22:35:45 +00:00
message.channel.send({embed: AccSuccessEmbed});
2019-07-24 16:52:30 -06:00
}
exports.help = {
2020-01-25 16:59:35 +00:00
name: supportbot.Announcement_Command,
2020-01-25 13:37:25 +00:00
}