const Command = require('../../structures/Command'); const moment = require('moment'); const { MessageEmbed } = require('discord.js'); const filterLevels = ['Off', 'No Role', 'Everyone']; const verificationLevels = ['None', 'Low', 'Medium', '(╯°□°)╯︵ ┻━┻', '┻━┻ ミヽ(ಠ益ಠ)ノ彡┻━┻']; module.exports = class ServerCommand extends Command { constructor(client) { super(client, { name: 'server', aliases: ['guild', 'server-info', 'guild-info'], group: 'info', memberName: 'server', description: 'Responds with detailed information on the server.', guildOnly: true, clientPermissions: ['EMBED_LINKS'] }); } async run(msg) { if (!msg.guild.members.has(msg.guild.ownerID)) await msg.guild.members.fetch(msg.guild.ownerID); const embed = new MessageEmbed() .setColor(0x00AE86) .setThumbnail(msg.guild.iconURL({ format: 'png' })) .addField('❯ Name', msg.guild.name, true) .addField('❯ ID', msg.guild.id, true) .addField('❯ Region', msg.guild.region.toUpperCase(), true) .addField('❯ Creation Date', moment.utc(msg.guild.createdAt).format('MM/DD/YYYY h:mm A'), true) .addField('❯ Explicit Filter', filterLevels[msg.guild.explicitContentFilter], true) .addField('❯ Verification Level', verificationLevels[msg.guild.verificationLevel], true) .addField('❯ Owner', msg.guild.owner.user.tag, true) .addField('❯ Members', msg.guild.memberCount, true) .addField('❯ Roles', msg.guild.roles.size, true) .addField('❯ Channels', msg.guild.channels.filter(channel => channel.type !== 'category').size, true); return msg.embed(embed); } };