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 +}