41 lines
911 B
PHP
41 lines
911 B
PHP
<?php
|
|
|
|
namespace App\Policies;
|
|
|
|
use App\Models\User;
|
|
use Illuminate\Auth\Access\Response;
|
|
|
|
class UsersPolicy
|
|
{
|
|
public function deleteOther(User $user): bool
|
|
{
|
|
return $user->role === 1 || $user->role === 2;
|
|
}
|
|
|
|
public function createOther(User $user): bool {
|
|
return $user->role === 1 || $user->role === 2;
|
|
}
|
|
|
|
public function deactivate(User $user, User $userToDeactivate): bool
|
|
{
|
|
return in_array($user->role, [1, 2])
|
|
&& $user->role < $userToDeactivate->role
|
|
&& $user->id !== $userToDeactivate->id;
|
|
}
|
|
|
|
public function validate(User $user): bool
|
|
{
|
|
return $user->role === 1 || $user->role === 2;
|
|
}
|
|
|
|
public function addRole(User $user): bool
|
|
{
|
|
return $user->role === 1;
|
|
}
|
|
|
|
public function getInvalidUsers(User $user) : bool
|
|
{
|
|
return $user->role === 1 || $user->role === 2;
|
|
}
|
|
}
|