From 555100e10755076a03ea70545f046b881591233a Mon Sep 17 00:00:00 2001 From: Tutur33 Date: Sat, 17 Feb 2024 00:45:07 +0100 Subject: [PATCH] add servericon & addbtnurl command --- commands/utils/addbtnurl.js | 31 +++++++++++++++++++++++++++++++ commands/utils/servericon.js | 31 +++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 commands/utils/addbtnurl.js create mode 100644 commands/utils/servericon.js diff --git a/commands/utils/addbtnurl.js b/commands/utils/addbtnurl.js new file mode 100644 index 0000000..6f64719 --- /dev/null +++ b/commands/utils/addbtnurl.js @@ -0,0 +1,31 @@ +const { EmbedBuilder, ButtonStyle, ButtonBuilder, ActionRowBuilder } = require("discord.js") + +module.exports = { + name: 'addbtnurl', + description: 'Ajoute un bouton url', + emote: '🔗', + utilisation: 'addbtnurl [url] [message ID] [label]', + category: 'utils', + + async execute(message, args, client) { + if (!args[0]) return message.reply('Veuillez fournir une url'); + if (!args[1]) return message.reply('Veuillez fournir un ID de message'); + if (!args[2]) return message.reply('Veuillez fournir un label'); + const url = args[0]; + const messageId = args[1]; + const label = args.slice(2).join(' '); + + const button = new ButtonBuilder() + .setLabel(label) + .setURL(url) + .setStyle(ButtonStyle.Link); + + const row = new ActionRowBuilder() + .addComponents(button); + + const msg = await message.channel.messages.fetch(messageId); + if (!msg) return message.reply('Message introuvable'); + if (msg.author.id !== client.user.id) return message.reply('Ce message n\'a pas été envoyé par moi'); + msg.edit({ components: [row] }); + }, +}; \ No newline at end of file diff --git a/commands/utils/servericon.js b/commands/utils/servericon.js new file mode 100644 index 0000000..ab7fd70 --- /dev/null +++ b/commands/utils/servericon.js @@ -0,0 +1,31 @@ +const { EmbedBuilder, ButtonStyle, ButtonBuilder, ActionRowBuilder } = require("discord.js") + +module.exports = { + name: 'servericon', + description: 'Affiche l\'icone du serveur', + emote: '🖼️', + utilisation: 'servericon', + category: 'utils', + + async execute(message, args, client) { + let serverIcon = message.guild.iconURL( { dynamic: true, size: 4096 } ); + if (!serverIcon) return message.reply("Ce serveur n'a pas d'icone"); + + const button = new ButtonBuilder() + .setLabel('Icon url') + .setURL(serverIcon) + .setStyle(ButtonStyle.Link); + + const row = new ActionRowBuilder() + .addComponents(button); + + const embed = new EmbedBuilder() + .setColor("#FFFFFF") + .setTitle(`🖼️ Icon du serveur \`${message.guild.name}\``) + .setImage(serverIcon) + .setTimestamp() + .setFooter({text: `${client.user.tag} © 2024`, iconURL: client.user.displayAvatarURL({dynamic: true})}); + + message.reply({ embeds: [embed], components: [row]}); + }, +}; \ No newline at end of file