45 lines
736 B
TypeScript
45 lines
736 B
TypeScript
import { Event, Participant, prisma, User } from "@repo/db";
|
|
|
|
export const handleParticipantFinished = async (
|
|
event: Event,
|
|
participant: Participant,
|
|
user: User,
|
|
) => {
|
|
const discordID = await prisma.discordAccount.findFirst({
|
|
where: {
|
|
userId: user.id,
|
|
},
|
|
});
|
|
|
|
//TODO: Send Discord Message
|
|
//TODO: Send Email
|
|
|
|
await prisma.user.update({
|
|
where: {
|
|
id: user.id,
|
|
},
|
|
data: {
|
|
badges: {
|
|
push: event.finishedBadges,
|
|
},
|
|
permissions: event.finishedPermissions,
|
|
},
|
|
});
|
|
|
|
await prisma.participant.update({
|
|
where: {
|
|
id: participant.id,
|
|
},
|
|
data: {
|
|
finished: true,
|
|
statusLog: {
|
|
push: {
|
|
event: "Event finished",
|
|
timestamp: new Date(),
|
|
user: "system",
|
|
},
|
|
},
|
|
},
|
|
});
|
|
};
|