From dd2d9071866437e28024e78254836f2e306afb76 Mon Sep 17 00:00:00 2001 From: Quildra Date: Wed, 20 Dec 2023 14:51:38 +0000 Subject: [PATCH] Update the races api to use a guard --- packages/bridge-server/src/races/races.controller.ts | 8 ++++++-- packages/bridge-ui/src/app/services/races.service.ts | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/bridge-server/src/races/races.controller.ts b/packages/bridge-server/src/races/races.controller.ts index 1066db4..9355beb 100644 --- a/packages/bridge-server/src/races/races.controller.ts +++ b/packages/bridge-server/src/races/races.controller.ts @@ -6,6 +6,9 @@ import { RaceResultsService } from 'src/race-results/race-results.service'; import * as TMIO from 'trackmania.io'; import { AuthGuard } from 'src/auth/auth.guard'; +import { Roles } from 'src/authorization/roles.decorator'; +import { JwtAuthGuard } from 'src/authz/authz.guard'; +import { RolesGuard } from 'src/authorization/roles.guard'; @Controller('races') export class RacesController { @@ -33,8 +36,9 @@ export class RacesController { return this.raceResultsService.getFastestTimesForRace(params.id); } - @UseGuards(AuthGuard) - @Post() + @UseGuards(JwtAuthGuard, RolesGuard) + @Post('create') + @Roles(['create:races']) create(@Body() body: any) { console.log("Races/Create") return this.racesService.create(body.mapUID, body.startDate, body.endDate, body.seasonId); diff --git a/packages/bridge-ui/src/app/services/races.service.ts b/packages/bridge-ui/src/app/services/races.service.ts index 085c596..2a8a7b8 100644 --- a/packages/bridge-ui/src/app/services/races.service.ts +++ b/packages/bridge-ui/src/app/services/races.service.ts @@ -33,7 +33,7 @@ export class RacesService { } create(mapUID: string, startDate: Date, endDate: Date, seasonId: number) { - return this.httpClient.post(this.serverEndpointService.getCurrentEndpoint()+"races", { mapUID: mapUID, startDate: startDate, endDate: endDate, seasonId: seasonId}); + return this.httpClient.post(this.serverEndpointService.getCurrentEndpoint()+"races/create", { mapUID: mapUID, startDate: startDate, endDate: endDate, seasonId: seasonId}); } subscribeForUpdates(raceId: string) {