const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require("discord.js"); const { getTicketByChannel, closeTicket } = require("../../handlers/database"); const { config, lang } = require("../../handlers/configLoader"); module.exports = { data: new SlashCommandBuilder() .setName("close") .setDescription("Fermer un ticket"), async execute(interaction) { const ticket = getTicketByChannel(interaction.channel.id); if (!ticket) { return interaction.reply({ content: lang.ticket.not_in_ticket, flags: MessageFlags.Ephemeral }); } closeTicket(interaction.channel.id); await interaction.reply(lang.ticket.closing); // Log fermeture const logChannel = await interaction.client.channels.fetch(config.logsChannel).catch(() => null); if (logChannel) { const embed = new EmbedBuilder() .setTitle("🔒 Ticket fermé") .addFields( { name: "Salon", value: `${interaction.channel.name}`, inline: true }, { name: "Fermé par", value: `${interaction.user.tag} (${interaction.user.id})`, inline: true } ) .setColor(0xe74c3c) .setTimestamp(); logChannel.send({ embeds: [embed] }); } setTimeout(() => { interaction.channel.delete().catch(() => {}); }, 5000); } };