|
| 1 | +module.exports = { |
| 2 | + name: "serverinfo", |
| 3 | + description: "Extra! Extra! Info on the server!", |
| 4 | + guildOnly: true, |
| 5 | + authorizedGuilds: [], |
| 6 | + hidden: false, |
| 7 | + permissions: ["DEFAULT"], |
| 8 | + cooldown: 5, |
| 9 | + aliases: [], |
| 10 | + syntax: [], |
| 11 | + execute: async(app, message, args) => { |
| 12 | + try { |
| 13 | + var guild = message.guild, |
| 14 | + splashData = null; |
| 15 | + |
| 16 | + guild.acronym = guild.name.match(/\b(\w)/g).join(""); // Cool thing |
| 17 | + |
| 18 | + var members = { |
| 19 | + "total": guild.members.cache.size |
| 20 | + }; |
| 21 | + members["users"] = guild.members.cache.filter(member => !member.user.bot).size; |
| 22 | + members["bots"] = members.total - members.users; |
| 23 | + |
| 24 | + |
| 25 | + var embed = { |
| 26 | + title: `${app.config.system.emotes.information} **${guild.name}**`, |
| 27 | + color: app.config.system.embedColors.blue, |
| 28 | + fields: [ |
| 29 | + { name: "ID", value: guild.id, inline: true }, |
| 30 | + { name: "Acronym", value: guild.acronym, inline: true }, |
| 31 | + { name: "Boosts", value: guild["premiumSubscriptionCount"].toString(), inline: true }, |
| 32 | + { name: "Preferred Locale", value: guild.preferredLocale, inline: true }, |
| 33 | + { name: "Owner", value: `<@${guild.ownerId}> (${guild.ownerId})`, inline: true }, |
| 34 | + { name: "Features", value: ((guild.features.length > 0) ? "`" + guild.features.join("`, `") + "`" : "No special features :(") }, |
| 35 | + |
| 36 | + { name: "Channels", value: guild.channels.cache.size.toString(), inline: true }, |
| 37 | + { name: "Roles", value: guild.roles.cache.size.toString(), inline: true }, |
| 38 | + { name: "Bans", value: guild.bans.cache.size.toString(), inline: true }, |
| 39 | + { name: "Invites", value: guild.invites.cache.size.toString(), inline: true }, |
| 40 | + { name: "Emojis", value: guild.emojis.cache.size.toString(), inline: true }, |
| 41 | + { name: "Stickers", value: guild.stickers.cache.size.toString(), inline: true }, |
| 42 | + |
| 43 | + { name: "Total Members", value: members.total.toString(), inline: true }, |
| 44 | + { name: "Users", value: members.users.toString(), inline: true }, |
| 45 | + { name: "Bots", value: members.bots.toString(), inline: true } |
| 46 | + |
| 47 | + ] |
| 48 | + }; |
| 49 | + |
| 50 | + if (guild.description != null) embed.description = guild.description; |
| 51 | + if (guild["vanityURLCode"]) embed.fields.push({ name: "Vanity URL", value: "https://discord.gg/" + guild["vanityURLCode"], inline: true }, { name: "Vanity URL Uses", value: guild["vanityURLUses"].toString(), inline: true }); |
| 52 | + |
| 53 | + embed.fields.push({ "name": "Server Created", "value": new Date(guild.createdTimestamp).toString() }, { "name": app.name + " Joined", "value": new Date(guild.joinedTimestamp).toString() }); |
| 54 | + |
| 55 | + if (guild.icon != null) |
| 56 | + embed.thumbnail = { url: `https://cdn.discordapp.com/icons/${guild.id}/${guild.icon}.${app.functions.isAnimated(guild.icon) ? "gif": "png"}?size=1024` }; |
| 57 | + if (guild.splash != null) |
| 58 | + splashData = `https://cdn.discordapp.com/splashes/${guild.id}/${guild.splash}.${app.functions.isAnimated(guild.splash) ? "gif": "png"}?size=600`; |
| 59 | + if (guild.banner != null) |
| 60 | + embed["image"] = { url: `https://cdn.discordapp.com/banners/${guild.id}/${guild.banner}.${app.functions.isAnimated(guild.banner) ? "gif": "png"}?size=512` }; |
| 61 | + |
| 62 | + var options = { embeds: [embed] }; |
| 63 | + if (splashData != null) { |
| 64 | + const { MessageAttachment } = app.modules["discord.js"]; |
| 65 | + options.files = [new MessageAttachment(splashData)]; |
| 66 | + }; |
| 67 | + |
| 68 | + app.functions.msgHandler(message, options); |
| 69 | + |
| 70 | + } catch (Ex) { |
| 71 | + return app.functions.msgHandler(message, { |
| 72 | + embeds: [{ |
| 73 | + description: `${app.config.system.emotes.error} **${Ex.message}**`, |
| 74 | + color: app.config.system.embedColors.red, |
| 75 | + }] |
| 76 | + }); |
| 77 | + }; |
| 78 | + } |
| 79 | +}; |
0 commit comments