Files
cssd-back/app/Policies/UserPolicy.php
T
2020-06-05 17:17:55 +04:30

45 lines
1.1 KiB
PHP

<?php
namespace App\Policies;
use App\User;
use Doctrine\Tests\Common\Inflector\InflectorTest;
class UserPolicy
{
public function list(User $User)
{
if($User->hasRole('Admin|Supervisor'))
return true;
}
public function delete(User $User, User $Operator)
{
if($User->hasRole('Admin') && $Operator->test_results->count() == 0 && $Operator->test_types->count() == 0
&& $Operator->items->count() == 0 && $Operator->packages->count() == 0 && $Operator->labels->count() == 0
&& $Operator->cycles->count() == 0)
return true;
}
public function update(User $User, User $Operator)
{
if($User->id == $Operator->id)
return true;
}
public function store(User $User)
{
if($User->hasRole('Admin'))
return true;
}
public function changeRole(User $User)
{
if($User->hasRole('Admin'))
return true;
}
public function changeStatus(User $User)
{
if($User->hasRole('Admin|Supervisor'))
return true;
}
}