can('view_any_role'); } /** * Determine whether the user can view the model. */ public function view(User $user, Role $role): bool { return $user->can('view_role'); } /** * Determine whether the user can create models. */ public function create(User $user): bool { return $user->can('create_role'); } /** * Determine whether the user can update the model. */ public function update(User $user, Role $role): bool { // Prevent editing of admin role (optional) // if ($role->name === 'admin') { // return false; // } return $user->can('update_role'); } /** * Determine whether the user can delete the model. */ public function delete(User $user, Role $role): bool { // Prevent deletion of admin role (optional) // if ($role->name === 'admin') { // return false; // } return $user->can('delete_role'); } /** * Determine whether the user can restore the model. */ public function restore(User $user, Role $role): bool { return $user->can('restore_role'); } /** * Determine whether the user can permanently delete the model. */ public function forceDelete(User $user, Role $role): bool { // Prevent force deletion of admin role (optional) // if ($role->name === 'admin') { // return false; // } return $user->can('force_delete_role'); } }