From 5c97a6dc6acad892fbca0a4dcdd9bb859852aa2a Mon Sep 17 00:00:00 2001 From: mudkipscience Date: Mon, 12 Dec 2022 18:35:42 +1100 Subject: [PATCH] wip serverinfo --- bot/commands/Utility/serverinfo.js | 45 ++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 bot/commands/Utility/serverinfo.js diff --git a/bot/commands/Utility/serverinfo.js b/bot/commands/Utility/serverinfo.js new file mode 100644 index 0000000..0336289 --- /dev/null +++ b/bot/commands/Utility/serverinfo.js @@ -0,0 +1,45 @@ +const Command = require('../../base/Command.js'); +const { time } = require('discord.js'); + +module.exports = class Avatar extends Command { + constructor (name, category) { + super (name, category); + this.name = name, + this.description = 'View information on this server.', + this.usage = '/serverinfo', + this.category = category; + } + + async run (client, interaction, data) { //eslint-disable-line no-unused-vars + const guild = await client.guilds.fetch(interaction.guild.id, {force: true}); + const members = await guild.members.fetch(); + const embed = new client.EmbedBuilder() + .setColor(client.functions.embedColor(guild)) + .setTitle(guild.name) + .setThumbnail(guild.iconURL({extension: 'png', 'size': 4096})) + .addFields([ + { + name: 'ID', value: guild.id, inline: true + }, + { + name: 'Owner', value: `<@${guild.ownerId}>`, inline: true + }, + { + name: 'Created', value: time(guild.createdAt) + '\n' + time(guild.createdAt, 'R'), inline: true + }, + { + name: 'Boosts', value: `${guild.premiumSubscriptionCount} (Level ${guild.premiumTier})`, inline: true + + }, + { + name: 'Members', + value: `${members.size} Total\n${members.size - members.filter(member => member.user.bot).size} Humans\n${members.filter(member => member.user.bot).size} Bots`, + inline: true + }, + { + name: 'Channels', value: `${guild.channels.cache.size} ()` + } + ]); + interaction.reply({ embeds: [embed] }); + } +}; \ No newline at end of file