mirror of
https://github.com/arthur-pbty/bot-discord-coins.git
synced 2026-06-03 15:07:20 +02:00
95 lines
3.4 KiB
JavaScript
95 lines
3.4 KiB
JavaScript
const { EmbedBuilder } = require("discord.js");
|
|
const db = require("../../fonctions/database.js");
|
|
const embedColor = require("../../fonctions/embedColor.js");
|
|
|
|
module.exports = {
|
|
aliases: ["a", "ainfo", "allianceinfo"],
|
|
description: "Affiche les informations de votre alliance.",
|
|
emote: "🛡️",
|
|
utilisation: "",
|
|
permission: 0,
|
|
|
|
async execute(message, args, client) {
|
|
const member = message.mentions.members.first() || message.author;
|
|
const team = await new Promise((resolve, reject) => {
|
|
db.get(
|
|
`SELECT * FROM teams WHERE guildId = ? AND id = (SELECT teamId FROM users WHERE guildId = ? AND userId = ?)`,
|
|
[message.guild.id, message.guild.id, member.id],
|
|
(err, row) => {
|
|
if (err) reject(err);
|
|
resolve(row);
|
|
},
|
|
);
|
|
});
|
|
const alliance = await new Promise((resolve, reject) => {
|
|
db.get(
|
|
`SELECT * FROM alliances WHERE guildId = ? AND id = (SELECT alliancesId FROM teams WHERE guildId = ? AND id = ?)`,
|
|
[message.guild.id, message.guild.id, team.id],
|
|
(err, row) => {
|
|
if (err) reject(err);
|
|
resolve(row);
|
|
},
|
|
);
|
|
});
|
|
|
|
if (!alliance) {
|
|
const embed = new EmbedBuilder()
|
|
.setTitle("🛡️ Informations d'alliance")
|
|
.setDescription(
|
|
"<@" + member.id + "> n'est actuellement dans aucune alliance.",
|
|
)
|
|
.setColor(await embedColor(message.author.id, message.guild.id))
|
|
.setTimestamp()
|
|
.setFooter({
|
|
text: `Demandé par ${message.author.tag}`,
|
|
iconURL: message.author.displayAvatarURL(),
|
|
});
|
|
|
|
return message.reply({
|
|
embeds: [embed],
|
|
allowedMentions: { repliedUser: false },
|
|
});
|
|
} else {
|
|
const memberlist = await new Promise((resolve, reject) => {
|
|
db.all(
|
|
`SELECT name FROM teams WHERE guildId = ? AND alliancesId = ?`,
|
|
[message.guild.id, team.alliancesId],
|
|
(err, rows) => {
|
|
if (err) reject(err);
|
|
resolve(rows);
|
|
},
|
|
);
|
|
});
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
const embed = new EmbedBuilder()
|
|
.setTitle("🛡️ Informations de `" + alliance.name + "`:")
|
|
.setDescription(
|
|
`**Id:** \`${alliance.id}\`\n**Description:** \`${alliance.description}\`\n**Banque:** \`${alliance.bank}\`coins => Tout le monde peux recupéré ces coins.\n**Reputation:** \`${alliance.reputation} => Tout le monde peux recupéré ces reputations\`\n\n**Membres (\`${memberlist.length}\`):**\n${memberlist.map((member) => `**${member.allianceRole}:** <@${member.userId}>`).join("\n")}\n`,
|
|
)
|
|
.setColor(await embedColor(message.author.id, message.guild.id))
|
|
.setTimestamp()
|
|
.setFooter({
|
|
text: `Demandé par ${message.author.tag}`,
|
|
iconURL: message.author.displayAvatarURL(),
|
|
});
|
|
|
|
const urlRegex1 = /(https?:\/\/[^\s]+)/g;
|
|
if (alliance.icon && urlRegex1.test(alliance.icon)) {
|
|
embed.setThumbnail(alliance.icon);
|
|
}
|
|
|
|
const urlRegex2 = /(https?:\/\/[^\s]+)/g;
|
|
if (alliance.banner && urlRegex2.test(alliance.banner)) {
|
|
embedTopDonnateur.setImage(alliance.banner);
|
|
}
|
|
|
|
return message.reply({
|
|
embeds: [embed],
|
|
allowedMentions: { repliedUser: false },
|
|
});
|
|
}
|
|
},
|
|
};
|