diff --git a/src/commands/admin/create-ticket-system.ts b/src/commands/admin/create-ticket-system.ts index db32b8b..fba851f 100644 --- a/src/commands/admin/create-ticket-system.ts +++ b/src/commands/admin/create-ticket-system.ts @@ -223,22 +223,26 @@ export class CreateTicketSystem { @ButtonComponent({ id: 'close-btn' }) async closeBtn(interaction: ButtonInteraction): Promise { - await interaction.deferReply() - logger.action( 'Ticket close attempt', `User: ${interaction.user.username}(${interaction.user.id})\nChannel: ${interaction.channel?.id}`, ) if (!interaction.channel || !interaction.guild) { - await interaction.editReply('❌ Ticket channel does not exist') return } + if (!interaction.channel.isThread() || interaction.channel.archived) { return } - await interaction.editReply('Closing ticket..') + try { + await interaction.deferReply() + await interaction.editReply('Closing ticket..') + } catch (e) { + logger.error('Deferring interaction reply', e) + return + } try { // lock + archive thread