import { Body, Controller, Get, Post, UseGuards } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; import { KcService } from './kc.service'; import { CreateKcDto } from './dto/create-kc.dto'; import { Roles } from '../common/roles.decorator'; import { RolesGuard } from '../common/roles.guard'; import { Role } from '../common/role.enum'; @Controller('kc') @UseGuards(AuthGuard(['authentik', 'team']), RolesGuard) export class KcController { constructor(private readonly kc: KcService) {} /// Only the Leitungsteam may create new KC events. @Post() @Roles(Role.LEITUNGSTEAM) create(@Body() dto: CreateKcDto) { return this.kc.createKc(dto.name); } @Get() @Roles(Role.LEITUNGSTEAM) list() { return this.kc.listKcs(); } }