feat: teacher invitation middelware + extra error catchings
This commit is contained in:
parent
ac399153b6
commit
f671341bad
4 changed files with 43 additions and 5 deletions
|
@ -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);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue