%PDF- %PDF-
Direktori : /var/www/html/o91-api/vendor/spatie/laravel-permission/src/Exceptions/ |
Current File : /var/www/html/o91-api/vendor/spatie/laravel-permission/src/Exceptions/UnauthorizedException.php |
<?php namespace Spatie\Permission\Exceptions; use Symfony\Component\HttpKernel\Exception\HttpException; class UnauthorizedException extends HttpException { private $requiredRoles = []; private $requiredPermissions = []; public static function forRoles(array $roles): self { $message = 'User does not have the right roles.'; if (config('permission.display_permission_in_exception')) { $permStr = implode(', ', $roles); $message = 'User does not have the right roles. Necessary roles are '.$permStr; } $exception = new static(403, $message, null, []); $exception->requiredRoles = $roles; return $exception; } public static function forPermissions(array $permissions): self { $message = 'User does not have the right permissions.'; if (config('permission.display_permission_in_exception')) { $permStr = implode(', ', $permissions); $message = 'User does not have the right permissions. Necessary permissions are '.$permStr; } $exception = new static(403, $message, null, []); $exception->requiredPermissions = $permissions; return $exception; } public static function forRolesOrPermissions(array $rolesOrPermissions): self { $message = 'User does not have any of the necessary access rights.'; if (config('permission.display_permission_in_exception') && config('permission.display_role_in_exception')) { $permStr = implode(', ', $rolesOrPermissions); $message = 'User does not have the right permissions. Necessary permissions are '.$permStr; } $exception = new static(403, $message, null, []); $exception->requiredPermissions = $rolesOrPermissions; return $exception; } public static function notLoggedIn(): self { return new static(403, 'User is not logged in.', null, []); } public function getRequiredRoles(): array { return $this->requiredRoles; } public function getRequiredPermissions(): array { return $this->requiredPermissions; } }