hjelp
- 📅 2023-08-23T20:02:11.434Z
- 👁️ 203 katselukertaa
- 🔓 Julkinen
const rrSchema = require("../../models/roleModel");
const { SlashCommandBuilder, PermissionFlagsBits, EmbedBuilder, ActionRowBuilder, StringSelectMenuBuilder, StringSelectMenuOptionBuilder } = require("discord.js");
module.exports = {
data: new SlashCommandBuilder()
.setName("roolivalikko")
.setDescription("Luo roolivalikko")
.setDMPermission(false)
.setDefaultMemberPermissions(PermissionFlagsBits.Administrator),
async execute(interaction) {
const { guildId, guild, channel } = interaction
try {
const data = await rrSchema.findOne({ GuildID: guildId })
if (!data.roles.length > 0)
return interaction.reply({ content: "This server does not have any data.", ephemeral: true })
const panelEmbed = new EmbedBuilder()
.setDescription("Valitse alta itsellesi rooleja")
.setColor(0x013220)
const options = data.roles.map(x => {
const role = guild.roles.cache.get(x.roleId)
return {
label: role.name,
value: role.id,
description: x.roleDescription,
emoji: x.roleEmoji || undefined
};
});
const menuComponents = new StringSelectMenuBuilder()
.setCustomId('reaction-roles')
.setMaxValues(options.length)
.addOptions(options)
// const menuComponents2 = new StringSelectMenuBuilder()
// .setCustomId('null')
// .addOptions(
// new StringSelectMenuOptionBuilder()
// .setLabel('Nollaa')
// .setDescription('Nollaa kaikki tässä valikossa olevat roolit')
// .setValue('bulbasaur'),
// );
channel.send({ embeds: [panelEmbed], components: [new ActionRowBuilder().addComponents(menuComponents)] })
return interaction.reply({ content: "Succesfully sent your panel.", ephemeral: true });
} catch (err) {
console.log(err)
}
}
}