feat: teacher invitation middelware + extra error catchings

This commit is contained in:
Gabriellvl 2025-04-18 22:33:22 +02:00
parent ac399153b6
commit f671341bad
4 changed files with 43 additions and 5 deletions

View file

@ -2,6 +2,7 @@ import { Request, Response } from 'express';
import { requireFields } from './error-helper';
import { createInvitation, deleteInvitation, getAllInvitations, getInvitation, updateInvitation } from '../services/teacher-invitations';
import { TeacherInvitationData } from '@dwengo-1/common/interfaces/teacher-invitation';
import {ConflictException} from "../exceptions/conflict-exception";
export async function getAllInvitationsHandler(req: Request, res: Response): Promise<void> {
const username = req.params.username;
@ -30,6 +31,10 @@ export async function createInvitationHandler(req: Request, res: Response): Prom
const classId = req.body.class;
requireFields({ sender, receiver, classId });
if (sender === receiver){
throw new ConflictException("Cannot send an invitation to yourself");
}
const data = req.body as TeacherInvitationData;
const invitation = await createInvitation(data);