From 59a5a4fde95f1404db1d33c4c64906badebca335 Mon Sep 17 00:00:00 2001 From: T'JAMPENS QUENTIN p2406187 Date: Sat, 22 Nov 2025 00:37:59 +0100 Subject: [PATCH] add delete event route --- app/Http/Controllers/EventsController.php | 17 +++++++++++++++++ routes/events.php | 2 ++ tests/Events/Delete event.bru | 20 ++++++++++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 tests/Events/Delete event.bru diff --git a/app/Http/Controllers/EventsController.php b/app/Http/Controllers/EventsController.php index 8b34059..332d49b 100644 --- a/app/Http/Controllers/EventsController.php +++ b/app/Http/Controllers/EventsController.php @@ -66,4 +66,21 @@ class EventsController extends Controller return response()->json(['message' => "Server error"], 500); } } + + public function delete(Request $request, int $id): JsonResponse { + + if ($request->user()->role != 1) { + return response()->json(['message' => 'Forbidden'], 403); + } + + try { + + $event = Events::find($id); + $event->delete(); + return response()->json(["message" => "Event deleted"]); + } catch (\Exception $e) { + Log::info($e->getMessage()); + return response()->json(['message' => "Server error"], 500); + } + } } diff --git a/routes/events.php b/routes/events.php index 9f8d3d8..a503abd 100644 --- a/routes/events.php +++ b/routes/events.php @@ -21,3 +21,5 @@ Route::middleware(['web', 'auth:sanctum'])->post('/events/{id}/update', [EventsC Route::middleware(['web', 'auth:sanctum'])->post('/events/tasks/{id}/update', [TasksController::class, "update"]); Route::middleware(['web', 'auth:sanctum'])->get('/events', [EventsController::class, "getEvents"]); + +Route::middleware(['web', 'auth:sanctum'])->delete('/events/{id}', [EventsController::class, "delete"]); diff --git a/tests/Events/Delete event.bru b/tests/Events/Delete event.bru new file mode 100644 index 0000000..1cfedb3 --- /dev/null +++ b/tests/Events/Delete event.bru @@ -0,0 +1,20 @@ +meta { + name: Delete event + type: http + seq: 6 +} + +delete { + url: {{url}}/api/events/{{id}} + body: none + auth: inherit +} + +vars:pre-request { + id: +} + +settings { + encodeUrl: true + timeout: 0 +}