user()) { abort(403, 'Unauthorized action.'); } $userRole = $request->user()->role; // Convert string roles to UserRole enum cases for comparison $allowedRoles = array_map(function ($role) { return UserRole::from($role); }, $roles); if (!in_array($userRole, $allowedRoles)) { abort(403, 'You do not have permission to access this page.'); } return $next($request); } }