archiving tickets

This commit is contained in:
Danya H 2024-06-08 18:18:31 +01:00
parent aabcdbdadf
commit a4a58f0d83
2 changed files with 6 additions and 2 deletions

View File

@ -181,12 +181,16 @@ export class CreateTicketSystem {
@ButtonComponent({ id: 'close-btn' }) @ButtonComponent({ id: 'close-btn' })
async closeBtn(interaction: ButtonInteraction): Promise<void> { async closeBtn(interaction: ButtonInteraction): Promise<void> {
await interaction.deferReply()
if (!interaction.channel) { if (!interaction.channel) {
await interaction.editReply('❌ Ticket channel does not exist') await interaction.editReply('❌ Ticket channel does not exist')
return return
} }
if (interaction.channel.isThread()) { if (interaction.channel.isThread() && !interaction.channel.archived) {
await interaction.editReply('Closing ticket..')
await interaction.channel.setArchived(true, `Archived by ${userMention(interaction.user.id)}(${interaction.user.id})`) await interaction.channel.setArchived(true, `Archived by ${userMention(interaction.user.id)}(${interaction.user.id})`)
} return
}
await interaction.editReply('❌ Ticket is not a thread')
} }
} }

View File

@ -98,7 +98,7 @@ export function ticketEntityEmbed({ username }: TicketEntityEmbedProps) {
export function ticketEntityButton() { export function ticketEntityButton() {
const closeBtn = new ButtonBuilder() const closeBtn = new ButtonBuilder()
.setLabel('Close ticket') .setLabel('Archive ticket')
.setStyle(ButtonStyle.Danger) .setStyle(ButtonStyle.Danger)
.setCustomId('close-btn') .setCustomId('close-btn')