2019-05-09 21:29:24 +02:00
const { Command } = require ( 'discord-akairo' ) ;
const fs = require ( 'fs' ) ;
class welcomeCommand extends Command {
constructor ( ) {
super ( 'welcome' , {
2019-11-09 12:02:55 +01:00
aliases : [ 'welcome' , 'join' ] ,
2019-05-09 21:29:24 +02:00
category : 'admin' ,
channelRestriction : 'guild' ,
userPermissions : [ 'MANAGE_CHANNELS' ] ,
args : [
2019-11-09 12:02:55 +01:00
{
id : 'remove' ,
match : 'flag' ,
flag : '--remove'
} ,
2019-05-09 21:29:24 +02:00
{
id : 'message' ,
type : 'string' ,
2019-06-23 03:41:59 +02:00
match : 'rest' ,
2019-11-09 12:02:55 +01:00
default : 'Welcome [member] to [server]!'
2019-05-09 21:29:24 +02:00
}
] ,
description : {
2019-05-11 18:34:19 +02:00
content : 'Send a message to the current channel when a person join, you can use [member] to show the member username and [server] to show the name of the server' ,
2019-05-09 21:29:24 +02:00
usage : '[welcome message]' ,
examples : [ 'everyone welcome [adjectives] [member] and welcome on [server]' ]
}
} ) ;
}
async exec ( message , args ) {
let welcomeChannel = message . channel . id ;
2019-11-09 12:02:55 +01:00
if ( args . remove ) {
fs . unlink ( ` ./welcome/ ${ message . guild . id } .json ` , ( err ) => {
if ( err ) {
console . error ( err ) ;
return message . channel . send ( 'An error has occured, there is most likely no welcome message set!' ) ;
} else {
return message . channel . send ( 'Disabled unwelcome message' ) ;
}
} ) ;
}
2019-05-09 21:29:24 +02:00
fs . writeFile ( ` ./welcome/ ${ message . guild . id } .json ` , ` {"channel": " ${ welcomeChannel } ", "message": " ${ args . message } "} ` , function ( err ) {
if ( err ) {
console . log ( err ) ;
2019-11-09 12:02:55 +01:00
return message . channel . send ( 'An error has occured! im gonna be honest with you, i do not know what happened yet! but fear not! i will look into it!' ) ;
2019-05-09 21:29:24 +02:00
}
} ) ;
return message . channel . send ( ` This channel will now be used to welcome new user with the following message: ${ args . message } ` ) ;
}
}
module . exports = welcomeCommand ;