bearerToken() !== null) { $token = PersonalAccessToken::findToken($request->bearerToken()); if ($token !== null && $token->tokenable instanceof Supervisor && $token->can('supervisor') && $token->tokenable->is_active ) { Auth::guard('supervisor')->setUser($token->tokenable); $request->setUserResolver(fn () => $token->tokenable); return $next($request); } return response()->json([ 'message' => 'Token superviseur invalide.', ], 401); } if (Auth::guard('supervisor')->check()) { $supervisor = Auth::guard('supervisor')->user(); if ($supervisor instanceof Supervisor && $supervisor->is_active) { return $next($request); } } return response()->json([ 'message' => 'Superviseur non authentifié.', ], 401); } }