Skip to content

Commit d1e30ce

Browse files
committed
fix: update counters when transferring (closes #468)
1 parent 77e5b45 commit d1e30ce

File tree

1 file changed

+33
-26
lines changed

1 file changed

+33
-26
lines changed

src/commands/slash/transfer.js

+33-26
Original file line numberDiff line numberDiff line change
@@ -49,29 +49,46 @@ module.exports = class TransferSlashCommand extends SlashCommand {
4949
},
5050
where: { id: interaction.channel.id },
5151
});
52-
const from = ticket.createdById;
5352

54-
await client.prisma.ticket.update({
55-
data: {
56-
createdBy: {
57-
connectOrCreate: {
58-
create: { id: member.id },
59-
where: { id: member.id },
60-
},
61-
},
62-
},
63-
where: { id: interaction.channel.id },
64-
});
53+
const from = ticket.createdById;
6554

6655
const channelName = ticket.category.channelName
6756
.replace(/{+\s?(user)?name\s?}+/gi, member.user.username)
6857
.replace(/{+\s?(nick|display)(name)?\s?}+/gi, member.displayName)
6958
.replace(/{+\s?num(ber)?\s?}+/gi, ticket.number === 1488 ? '1487b' : ticket.number);
7059

71-
await interaction.channel.edit({
72-
name: channelName,
73-
topic: `${member.toString()}${ticket.topic?.length > 0 ? ` | ${decrypt(ticket.topic)}` : ''}`,
74-
});
60+
await Promise.all([
61+
client.prisma.ticket.update({
62+
data: {
63+
createdBy: {
64+
connectOrCreate: {
65+
create: { id: member.id },
66+
where: { id: member.id },
67+
},
68+
},
69+
},
70+
where: { id: interaction.channel.id },
71+
}),
72+
interaction.channel.edit({
73+
name: channelName,
74+
topic: `${member.toString()}${ticket.topic?.length > 0 ? ` | ${decrypt(ticket.topic)}` : ''}`,
75+
}),
76+
interaction.channel.permissionOverwrites.edit(
77+
member,
78+
{
79+
AttachFiles: true,
80+
EmbedLinks: true,
81+
ReadMessageHistory: true,
82+
SendMessages: true,
83+
ViewChannel: true,
84+
},
85+
),
86+
]);
87+
88+
const $category = client.tickets.$count.categories[ticket.categoryId];
89+
$category[from]--;
90+
$category[member.id] ||= 0;
91+
$category[member.id]++;
7592

7693
await interaction.editReply({
7794
embeds: [
@@ -86,15 +103,5 @@ module.exports = class TransferSlashCommand extends SlashCommand {
86103
],
87104
});
88105

89-
await interaction.channel.permissionOverwrites.edit(
90-
member,
91-
{
92-
AttachFiles: true,
93-
EmbedLinks: true,
94-
ReadMessageHistory: true,
95-
SendMessages: true,
96-
ViewChannel: true,
97-
},
98-
);
99106
}
100107
};

0 commit comments

Comments
 (0)