Files
hoshpoint-backend/app/Policies/RolePolicy.php

45 lines
863 B
PHP

<?php
namespace App\Policies;
use App\Models\Role;
use App\Models\User;
class RolePolicy
{
public function viewAny(User $user): bool
{
return $this->canManage($user);
}
public function view(User $user, Role $role): bool
{
return $this->canManage($user);
}
public function create(User $user): bool
{
return $this->canManage($user);
}
public function update(User $user, Role $role): bool
{
return $this->canManage($user);
}
public function delete(User $user, Role $role): bool
{
return $this->canManage($user);
}
public function deleteAny(User $user): bool
{
return $this->canManage($user);
}
private function canManage(User $user): bool
{
return $user->hasRole('admin') || $user->hasPermission('roles.manage');
}
}