2019-06-09 23:52:41 +01:00
// SupportBot
2020-01-25 13:20:44 +00:00
// Created by © 2020 Emerald Services
// Command: Add
2019-06-09 23:52:41 +01:00
const Discord = require ( "discord.js" );
const bot = new Discord . Client ()
2020-01-26 22:35:45 +00:00
const fs = require ( "fs" )
2020-01-25 16:56:56 +00:00
const yaml = require ( 'js-yaml' );
2019-06-09 23:52:41 +01:00
2020-01-25 16:56:56 +00:00
const supportbot = yaml . load ( fs . readFileSync ( './supportbot-config.yml' , 'utf8' ));
2019-06-09 23:52:41 +01:00
2020-01-26 22:35:45 +00:00
exports . run = ( bot , message , args ) => {
console . log ( `\u001b[33m` , `[ ${ supportbot . Bot_Name } ] > ` , `\u001b[31;1m` , ` ${ message . author . tag } ` , `\u001b[32;1m` , `has executed` , `\u001b[31;1m` , ` ${ supportbot . Prefix }${ supportbot . Add_Command } ` );
2020-01-25 13:20:44 +00:00
2020-04-16 16:43:16 +01:00
let staffGroup = message . guild . roles . cache . find ( staffRole => staffRole . name === supportbot . StaffRole );
2019-06-09 23:52:41 +01:00
2020-04-16 16:43:16 +01:00
const rolerequired = new Discord . MessageEmbed ()
. setTitle ( "SupportBot Error!" )
. setDescription ( `:x: **Error!** Incorrect Permissions, You cannot execute this command as you do not have the required role.\n\nRole Required: \` ${ supportbot . StaffRole } \`\n\nError Code: \`SB-02\`` )
. setColor ( supportbot . ErrorColour );
if ( ! message . member . roles . cache . has ( staffGroup . id )) return message . reply ({ embed : rolerequired });
2019-06-09 23:52:41 +01:00
2020-04-06 18:11:48 -04:00
const outsideticket = new Discord . MessageEmbed ()
2020-04-16 16:43:16 +01:00
. setTitle ( "Incorrect Channel" )
. setDescription ( `:warning: You cannot execute this command here. This command is used when closing a ticket.` )
. setColor ( supportbot . WarningColour );
2020-01-25 16:56:56 +00:00
if ( ! message . channel . name . startsWith ( ` ${ supportbot . Ticket_Channel_Name } -` )) return message . channel . send ({ embed : outsideticket });
2019-06-09 23:52:41 +01:00
2020-04-16 16:43:16 +01:00
let rUser = message . guild . member ( message . mentions . users . first () || message . guild . members . cache . get ( args [ 0 ]));
2019-06-09 23:52:41 +01:00
2020-04-06 18:11:48 -04:00
const cantfinduser = new Discord . MessageEmbed ()
2020-04-16 16:43:16 +01:00
. setTitle ( "Invalid User!" )
. setDescription ( `:warning: This user doesn't exist, Are they in this server?\n\nTry Again:\` ${ supportbot . Prefix }${ supportbot . Add_Command } <user#0000>\`` )
. setColor ( supportbot . WarningColour );
2020-01-25 13:20:44 +00:00
if ( ! rUser ) return message . channel . send ({ embed : cantfinduser });
2019-06-09 23:52:41 +01:00
2020-04-17 02:59:25 +01:00
message . channel . updateOverwrite ( rUser , { VIEW_CHANNEL : true , CREATE_INVITE : false , SEND_MESSAGES : true , READ_MESSAGES : true });
2019-06-09 23:52:41 +01:00
2020-04-06 18:11:48 -04:00
const useradded = new Discord . MessageEmbed ()
2020-04-16 16:43:16 +01:00
. setColor ( supportbot . SuccessColour )
2020-01-25 13:28:01 +00:00
. setTitle ( "User Added" )
. setDescription ( `👍 ${ rUser } has been added to this ticket` )
2020-01-25 13:20:44 +00:00
. setTimestamp ();
message . channel . send ({ embed : useradded });
2020-01-25 13:30:13 +00:00
};
2019-06-09 23:52:41 +01:00
exports . help = {
2020-01-25 16:56:56 +00:00
name : supportbot . Add_Command ,
2020-01-25 13:30:13 +00:00
};