galactic-bot/structure/client/components/commands/information/Guild.js

57 lines
1.5 KiB
JavaScript
Raw Normal View History

2020-06-19 23:02:16 +02:00
const { Command } = require('../../../../interfaces');
2020-05-24 23:40:38 +02:00
class GuildCommand extends Command {
constructor(client) {
super(client, {
name: 'guild',
2020-06-19 23:02:16 +02:00
module: 'information',
2020-05-24 23:40:38 +02:00
aliases: [
'server'
2020-05-24 23:40:38 +02:00
]
});
this.client = client;
}
async execute(message) {
const { guild } = message;
let vc = 0,
tc = 0;
const createdAt = `${guild.createdAt.toDateString()} (${this.client.resolver.timeAgo(Math.floor(Date.now() / 1000) - Math.floor(guild.createdTimestamp / 1000))} ago)`;
const description = guild._settings.description || 'N/A';
2020-05-24 23:40:38 +02:00
for (const channel of guild.channels.cache.values()) {
if (channel.type === 'voice') vc++;
if (channel.type === 'text') tc++;
}
return message.embed({
description: message.format('C_GUILD_TEMPLATE', {
createdAt,
description,
vc,
tc,
owner: guild.owner.id,
id: guild.id,
name: guild.name,
region: guild.region,
2020-06-19 23:02:16 +02:00
members: guild.memberCount,
boosters: guild.premiumSubscriptionCount,
tier: guild.premiumTier,
shard: guild.shardID
2020-05-24 23:40:38 +02:00
}),
thumbnail: {
url: guild.iconURL()
}
});
}
}
module.exports = GuildCommand;