ldc-crm/app/Policies/SingleOptinPolicy.php
2025-08-04 16:03:38 +02:00

62 lines
1.1 KiB
PHP

<?php
namespace App\Policies;
use App\Enums\Users\RoleEnum;
use App\Models\User;
use App\Policies\Rules\UserStaticRules;
class SingleOptinPolicy
{
/**
* View an Answer.
*
* @return boolean
*/
public function view(): bool
{
return UserStaticRules::noOne();
}
/**
* ViewAny an Answer.
*
* @param \App\Models\User $authUser
* @return boolean
*/
public function viewAny(User $authUser): bool
{
return UserStaticRules::atLeastRole($authUser, RoleEnum::admin);
}
/**
* Create an Answer.
*
* @return boolean
*/
public function create(): bool
{
return UserStaticRules::noOne();
}
/**
* Update an Answer.
*
* @return boolean
*/
public function update(): bool
{
return UserStaticRules::noOne();
}
/**
* Delete an Answer.
*
* @param \App\Models\User $authUser
* @return boolean
*/
public function delete(User $authUser): bool
{
return UserStaticRules::atLeastRole($authUser, RoleEnum::admin);
}
}