Haha-Yes/commands/admin/starboard.js

48 lines
1.3 KiB
JavaScript
Raw Normal View History

const { Command } = require('discord-akairo');
const fs = require('fs');
class StarBoardCommand extends Command {
2019-01-02 08:09:45 +01:00
constructor() {
super('starboard', {
aliases: ['starboard'],
category: 'admin',
channelRestriction: 'guild',
userPermissions: ['ADMINISTRATOR'],
description: {
content: 'Set starboard',
usage: '[]',
examples: ['']
}
});
}
2019-01-02 08:09:45 +01:00
async exec(message) {
let starboardChannel = message.channel.id;
2019-01-02 08:09:45 +01:00
fs.readFile(`./starboard/${message.guild.id}.json`, 'utf8', function readFileCallback(err, data) {
if (err) {
fs.writeFile(`./starboard/${message.guild.id}.json`, `{"starboard": "${starboardChannel}"}`, function (err) {
if (err) {
console.log(err);
}
2019-01-02 18:45:53 +01:00
2019-01-02 08:09:45 +01:00
return message.channel.send('This channel have been set as the starboard');
});
} else {
let starboard = JSON.parse(data); //now it an object
starboard['starboard'] = starboardChannel;
var json = JSON.stringify(starboard); //convert it back to json
fs.writeFile(`./starboard/${message.guild.id}.json`, json, 'utf8', function (err) {
if (err) {
2019-01-02 18:45:53 +01:00
2019-01-02 08:09:45 +01:00
return console.log(err);
}
});
}
});
2019-01-02 18:45:53 +01:00
2019-01-02 08:09:45 +01:00
return message.channel.send('This channel have been set as the starboard');
}
}
module.exports = StarBoardCommand;