Create event route + doc

This commit is contained in:
Quentin T'JAMPENS
2025-10-27 23:06:17 +01:00
parent adfe2a9fe1
commit 41cf8a5a44
3 changed files with 72 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
<?php
namespace App\Http\Controllers;
use App\Models\Events;
use Illuminate\Http\Request;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\Log;
class EventsController extends Controller
{
public function create(Request $request): JsonResponse
{
if ($request->user()->role != 1) {
return response()->json(['message' => 'Forbidden'], 403);
}
try {
Events::create([
"name" => $request['name'],
"description" => $request['description'],
]);
return response()->json(['message' => 'Event created']);
} catch (\Exception $e) {
Log::info($e->getMessage());
return response()->json(['message' => "Server error"], 500);
}
}
}
+3
View File
@@ -2,6 +2,7 @@
use App\Http\Controllers\AuthController; use App\Http\Controllers\AuthController;
use App\Http\Controllers\UserController; use App\Http\Controllers\UserController;
use App\Http\Controllers\EventsController;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Route;
@@ -30,3 +31,5 @@ Route::middleware(['web', 'auth:sanctum'])->post('/users/{id}/validate', [UserCo
Route::middleware(['web', 'auth:sanctum'])->post('/users/{id}/role', [UserController::class, "addRole"]); Route::middleware(['web', 'auth:sanctum'])->post('/users/{id}/role', [UserController::class, "addRole"]);
Route::middleware(['web', 'auth:sanctum'])->get('/users', [UserController::class, "getUsers"]); Route::middleware(['web', 'auth:sanctum'])->get('/users', [UserController::class, "getUsers"]);
Route::middleware(['web', 'auth:sanctum'])->post('/events/create', [EventsController::class, "create"]);
+36
View File
@@ -0,0 +1,36 @@
meta {
name: Create event
type: http
seq: 1
}
post {
url: {{url}}/api/events/create
body: json
auth: inherit
}
headers {
X-XSRF-TOKEN:
}
body:json {
{
"name": "{{name}}",
"description": "{{description}}"
}
}
vars:pre-request {
name: Mon super event
description: Ma super description
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}