From b3a670f700dd7715a81db0a7be5c9f8923586981 Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Thu, 10 Oct 2024 14:50:14 +0300 Subject: [PATCH] ref --- .../Classes/Acl/Email/OwnershipChecker.php | 18 +++++------------- application/Espo/Entities/Email.php | 6 ++++++ 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/application/Espo/Classes/Acl/Email/OwnershipChecker.php b/application/Espo/Classes/Acl/Email/OwnershipChecker.php index 28cd029a5c..9f28c991c8 100644 --- a/application/Espo/Classes/Acl/Email/OwnershipChecker.php +++ b/application/Espo/Classes/Acl/Email/OwnershipChecker.php @@ -31,9 +31,7 @@ namespace Espo\Classes\Acl\Email; use Espo\Entities\User; use Espo\Entities\Email; - use Espo\ORM\Entity; - use Espo\Core\Acl\DefaultOwnershipChecker; use Espo\Core\Acl\OwnershipOwnChecker; use Espo\Core\Acl\OwnershipTeamChecker; @@ -44,26 +42,20 @@ use Espo\Core\Acl\OwnershipTeamChecker; */ class OwnershipChecker implements OwnershipOwnChecker, OwnershipTeamChecker { - private $defaultOwnershipChecker; - - public function __construct(DefaultOwnershipChecker $defaultOwnershipChecker) - { - $this->defaultOwnershipChecker = $defaultOwnershipChecker; - } + public function __construct(private DefaultOwnershipChecker $defaultOwnershipChecker) + {} public function checkOwn(User $user, Entity $entity): bool { - /** @var Email $entity */ - - if ($user->getId() === $entity->get('assignedUserId')) { + if ($user->getId() === $entity->getAssignedUser()?->getId()) { return true; } - if ($user->getId() === $entity->get('createdById')) { + if ($user->getId() === $entity->getCreatedBy()?->getId()) { return true; } - if ($entity->hasLinkMultipleId('assignedUsers', $user->getId())) { + if ($entity->getAssignedUsers()->hasId($user->getId())) { return true; } diff --git a/application/Espo/Entities/Email.php b/application/Espo/Entities/Email.php index 89d81fceca..29558cafac 100644 --- a/application/Espo/Entities/Email.php +++ b/application/Espo/Entities/Email.php @@ -679,6 +679,12 @@ class Email extends Entity return $this->getValueObject('users'); } + public function getAssignedUsers(): LinkMultiple + { + /** @var LinkMultiple */ + return $this->getValueObject('assignedUsers'); + } + public function getAssignedUser(): ?Link { /** @var ?Link */