This commit is contained in:
Bxio 2025-05-01 21:29:36 +01:00
parent 3959d7e5a1
commit 75d5045a5b

View File

@ -1,5 +1,5 @@
// comandos/add.js
const { InteractionContextType, EmbedBuilder, SlashCommandBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, TextInputBuilder, TextInputStyle, ModalBuilder } = require('discord.js');
const { EmbedBuilder, SlashCommandBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, ModalBuilder, TextInputBuilder, TextInputStyle } = require('discord.js');
const conn = require('../../../database/db'); // Ajusta o caminho
console.error("--------------------- lista_membro.js ---------------------");
@ -68,6 +68,7 @@ module.exports = {
}
},
// Lida com a interação do botão
async handleButtonClick(interaction) {
if (interaction.customId === 'edit_meta') {
const modal = new ModalBuilder()
@ -90,10 +91,12 @@ module.exports = {
}
},
// Lida com a submissão do modal
async handleModalSubmit(interaction) {
const newAtual = interaction.fields.getTextInputValue('new_atual');
// Aqui você precisa atualizar os dados no banco de dados
try {
// Consulta os dados do usuário no banco de dados
const [rows] = await conn.execute(
'SELECT u.id, u.meta FROM users u WHERE u.discord_id = ?',
[interaction.user.id]
@ -116,5 +119,28 @@ module.exports = {
);
await interaction.reply({ content: 'Meta atualizada com sucesso!', ephemeral: true });
} catch (error) {
console.error('Erro ao atualizar a meta no banco de dados:', error);
await interaction.reply({ content: 'Erro ao atualizar a meta!', ephemeral: true });
}
}
};
// Adiciona o evento que lida com a criação de interações
client.on('interactionCreate', async (interaction) => {
if (!interaction.isButton() && !interaction.isModalSubmit()) return;
// Verifica se a interação é de um botão
if (interaction.isButton()) {
if (interaction.customId === 'edit_meta') {
await module.exports.handleButtonClick(interaction);
}
}
// Verifica se a interação é de um modal
if (interaction.isModalSubmit()) {
if (interaction.customId === 'meta_modal') {
await module.exports.handleModalSubmit(interaction);
}
}
});