From fd7f8eba960981482fabf350995bf753feebb176 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Mon, 3 Mar 2025 11:42:27 -0500 Subject: More commands ported; Almost all 2.x features have been added --- bot/src/commands/serverinfo.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 bot/src/commands/serverinfo.js (limited to 'bot/src/commands/serverinfo.js') diff --git a/bot/src/commands/serverinfo.js b/bot/src/commands/serverinfo.js new file mode 100644 index 0000000..01b39e8 --- /dev/null +++ b/bot/src/commands/serverinfo.js @@ -0,0 +1,31 @@ +import { SlashCommandBuilder, EmbedBuilder } from 'discord.js'; +import { abEmbedColour } from '../storage/consts.js'; + +export default { + data: new SlashCommandBuilder() + .setName('serverinfo') + .setDescription('Information about this server.'), + async execute(interaction) { + // const listedChannels = []; + let guildOwner = await interaction.guild.fetchOwner(); + let memberCountNoBots = await interaction.guild.members.fetch().then((members) => members.filter(member => !member.user.bot).size); + + const serverEmbed = new EmbedBuilder() + .setAuthor({ name: `${interaction.guild.name}`, iconURL: interaction.guild.iconURL() }) + .setDescription('Server Information') + .setThumbnail(interaction.guild.iconURL()) + .addFields( + { name: 'Main Information', value: `**Server Name:** ${interaction.guild.name}\n**Server ID:** ${interaction.guild.id}\n**Server Owner:** ${guildOwner.user.tag}`}, + { name: 'Join Dates', value: `**Created At:** ${interaction.guild.createdAt.toUTCString()}\n**AleeBot Joined:** ${interaction.guild.joinedAt.toUTCString()}`}, + { name: 'Total Members (with bots)', value: `${interaction.guild.memberCount}` }, + { name: 'Total Members (without bots)', value: `${memberCountNoBots}` } + ) + /*message.guild.channels.cacheType.forEach(channel => { + listedChannels.push(channel) + })*/ + //.addField('Channels', `${listedChannels.join('\n')}`) + //.addField('Total Channels', message.guild.channelCountMode) + .setColor(abEmbedColour); + return await interaction.reply({ embeds: [serverEmbed] }); + } +}; -- cgit v1.2.3