Settings List Command

This commit is contained in:
Daniel Odendahl Jr
2017-05-19 19:57:37 +00:00
parent 0ede46a84a
commit 346b9cb6c2
3 changed files with 37 additions and 5 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
const { Command } = require('discord.js-commando');
module.exports = class GuardCommand extends Command {
module.exports = class InviteGuardCommand extends Command {
constructor(client) {
super(client, {
name: 'invite-guard',
+31
View File
@@ -0,0 +1,31 @@
const { Command } = require('discord.js-commando');
const { stripIndents } = require('common-tags');
module.exports = class SettingListCommand extends Command {
constructor(client) {
super(client, {
name: 'setting-list',
group: 'settings',
memberName: 'setting-list',
description: 'Shows a list of current guild settings.',
guildOnly: true
});
}
run(msg) {
const staffRole = msg.guild.settings.get('staffRole', false);
const modLog = msg.guild.settings.get('modLog', false);
const memberLog = msg.guild.settings.get('memberLog', false);
const singleRole = msg.guild.settings.get('singleRole', false);
return msg.say(stripIndents`
**Prefix:** ${msg.guild.commandPrefix}
**Invite Guard:** ${msg.guild.settings.get('guard', false)}
**Staff Role:** ${staffRole ? msg.guild.roles.get(staffRole).name : 'None'}
**Mod Channel:** ${modLog ? msg.guild.channels.get(modLog).name: 'None'}
**Member Channel:** ${memberLog ? msg.guild.channels.get(memberLog).name : 'None'}
**Join Message:** ${msg.guild.settings.get('joinMsg', 'Welcome <user>! (Not Set)')}
**Leave Message:** ${msg.guild.settings.get('leaveMsg', 'Bye <user>... (Not Set)')}
**Single Role:** ${singleRole ? msg.guild.roles.get(singleRole).name : 'None'}
`);
}
};
+5 -4
View File
@@ -68,10 +68,11 @@ client.on('commandError', (command, err) => {
client.on('message', async (msg) => {
if (msg.guild && msg.guild.settings.get('guard') && /(discord(.gg\/|app.com\/invite\/))/g.test(msg.content)) {
if (msg.author.id === client.user.id) return;
if (msg.member.hasPermission('ADMINISTRATOR')) return;
if (msg.member.roles.has(msg.guild.settings.get('staffRole'))) return;
if (!msg.channel.permissionsFor(client.user).has('SEND_MESSAGES')) return;
if (msg.author.bot
|| msg.member.hasPermission('ADMINISTRATOR')
|| msg.author.id === msg.guild.ownerID
|| msg.member.roles.has(msg.guild.settings.get('staffRole'))
|| !msg.channel.permissionsFor(client.user).has('SEND_MESSAGES')) return;
if (msg.channel.permissionsFor(client.user).has('MANAGE_MESSAGES')) msg.delete();
else msg.channel.send('Message could not be deleted, missing the `Manage Messages` permission.');
return msg.reply('Invites are prohibited from being posted here.');