Viewing file: UnauthorizedException.php (2.13 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?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; } }
|