fix(tickets): perm checks
vi v@vt3e.cat
Tue, 24 Mar 2026 06:11:52 +0000
1 files changed,
16 insertions(+),
0 deletions(-)
M
src/interactions/commands/tickets/actions.ts
→
src/interactions/commands/tickets/actions.ts
@@ -203,6 +203,11 @@ .setCustomId("ticket:reopen")
.setLabel("Reopen") .setStyle(ButtonStyle.Success) .setEmoji("🔓"), + new ButtonBuilder() + .setCustomId("ticket:delete") + .setLabel("Delete") + .setStyle(ButtonStyle.Danger) + .setEmoji("🗑️"), ); await channel.send({@@ -456,6 +461,17 @@ _client: Client,
interaction: ButtonInteraction | ChatInputCommandInteraction, ticket: Ticket, ) { + const isModerator = await hasManagerPermissions( + interaction.member as GuildMember, + ); + const isReporter = interaction.user.id === ticket.authorId; + if (!isModerator && !isReporter) { + await interaction.editReply( + "❌ You don't have permission to generate a transcript for this ticket.", + ); + return; + } + const [transcriptText] = await generateTranscript(ticket); if (interaction.channel?.isSendable())