correct some issues

This commit is contained in:
2026-01-11 20:10:39 +01:00
parent ab1df4d692
commit c3122072da
10 changed files with 39 additions and 25 deletions
+6 -1
View File
@@ -70,7 +70,7 @@ class TasksController extends Controller
try {
$task = Task::find($request["task_id"]);
$task = Task::with('event')->find($request["task_id"]);
if ($task->users()->where('user_id', $id)->exists()) {
return response()->json(["message" => "User already assigned to this task"], 400);
@@ -209,6 +209,11 @@ class TasksController extends Controller
return response()->json(["message" => "Task not found"], 404);
}
if (!$task->event) {
Log::error("Relation 'event' manquante pour la tâche ID: " . $task->id);
return response()->json(["message" => "Task is missing its parent event"], 422);
}
$isAssigned = $task->users()->where('user_id', $id)->exists();
if (!$isAssigned) {
return response()->json(["message" => "User is not assigned to this task"], 400);
-1
View File
@@ -7,7 +7,6 @@ use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
/** @use HasFactory<\Database\Factories\TaskFactory> */
use HasFactory;
protected $fillable = [
+3 -3
View File
@@ -8,17 +8,17 @@ use Illuminate\Auth\Access\Response;
class EventsPolicy
{
public function create(User $user, Events $model): bool
public function create(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function update(User $user, Events $model): bool
public function update(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function delete(User $user, Events $model): bool
public function delete(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
+5 -5
View File
@@ -8,27 +8,27 @@ use Illuminate\Auth\Access\Response;
class TasksPolicy
{
public function create(User $user, Task $model): bool
public function create(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function assignOther(User $user, Task $model): bool
public function assignOther(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function unassignOther(User $user, Task $model): bool
public function unassignOther(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function delete(User $user, Task $model): bool
public function delete(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function update(User $user, Task $model): bool
public function update(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
+3 -3
View File
@@ -7,17 +7,17 @@ use Illuminate\Auth\Access\Response;
class UsersPolicy
{
public function deleteOther(User $user, User $model): bool
public function deleteOther(User $user): bool
{
return $user->role === 1;
}
public function validate(User $user, User $model): bool
public function validate(User $user): bool
{
return $user->role === 1 || $user->role === 2;
}
public function addRole(User $user, User $model): bool
public function addRole(User $user): bool
{
return $user->role === 1;
}
+1 -1
View File
@@ -11,7 +11,7 @@ delete {
}
vars:pre-request {
id:
id: 1
}
settings {
+2 -2
View File
@@ -17,8 +17,8 @@ body:json {
}
vars:pre-request {
id: 1
task_id: 3
id: 3
task_id: 2
}
settings {
+1 -1
View File
@@ -11,7 +11,7 @@ delete {
}
vars:pre-request {
id:
id: 1
}
settings {
+17 -7
View File
@@ -12,16 +12,26 @@ post {
body:json {
{
"event_id": 1,
"name": "test12",
"location": "blahhhhh",
"description": "blouuuuuuuuuuh",
"start": "2025-11-09 15:30:00",
"end": "2025-11-09 15:30:00",
"max_participants": 10
"event_id": "{{event_id}}",
"name": "{{name}}",
"location": "{{location}}",
"description": "{{description}}",
"start": "{{start}}",
"end": "{{end}}",
"max_participants": "{{max_participants}}"
}
}
vars:pre-request {
event_id: 1
name: Organisation plage
location: la rochelle
description: il faut organiser la sortie
start: 2025-01-15T13:45
end: 2025-03-15T13:00
max_participants: 5
}
settings {
encodeUrl: true
timeout: 0
+1 -1
View File
@@ -1,4 +1,4 @@
headers {
Accept: application/json
X-XSRF-TOKEN: eyJpdiI6ImFwSWk4NFdMcWJkcGF2YjRZQlQrRlE9PSIsInZhbHVlIjoiUXlyeFBkZFhDWmF1WE85OW1uY3c4ak1MM2dWMWlKRy9DRkN0MVNPNGVUUmthT1MxZ2hKREZhT0Y4d25idk5RdnZEcFh2UTRlbWpzYXRwSkNWL2Y5V2xlaEtYN09KMHpMQnQ4RzJvaElmWnFzTXEvSTJzZmZBenJEa2ZPelpydHoiLCJtYWMiOiIxNmIwNGRhNWQwYzIwZjBiYjA1ZTZlYzA2Y2NiY2FiNDY0NTZmNzU4NGIyZDYxODVhZGEwZWJiZmMwOGEwNzlmIiwidGFnIjoiIn0=
X-XSRF-TOKEN: eyJpdiI6IndFcmlWNnVVS2VFaXFHOVhzYS9iUEE9PSIsInZhbHVlIjoidWZHRUdvRy9tMWpRRnVxL0dkc2d4ZDRnTkwvVEtObndORFZpWWpNL0VTOWNOR3NHczV1V1pFUC9MdS9YTE9nMmJpZ1ViOVFmR05QaDZaN251TlNlQnl6MFB6VWNYNjdHT0NqTlBYNjRjaEY2SlhWNHk5WWwrQ09teTRwN2dzdDYiLCJtYWMiOiJhYjY0N2EwMzEzNTk4ODlkMjZkYTE0YTY1NTllN2VkODlhYjU0M2RmYzNjYzI3NDZkYjAwNWU5OTBiNDFjMjc4IiwidGFnIjoiIn0=
}