openvk/Web/Models/Entities/Traits/TOwnable.php
2020-06-07 19:04:43 +03:00

18 lines
510 B
PHP

<?php declare(strict_types=1);
namespace openvk\Web\Models\Entities\Traits;
use openvk\Web\Models\Entities\User;
trait TOwnable
{
function canBeModifiedBy(User $user): bool
{
if(is_callable([$this, "isCreatedBySystem"]))
if($this->isCreatedBySystem())
return false;
if($this->getRecord()->owner > 0)
return $this->getRecord()->owner === $user->getId();
else
return $this->getOwner()->canBeModifiedBy($user);
}
}