diff --git a/application/Espo/Classes/FieldProcessing/Email/IcsDataLoader.php b/application/Espo/Classes/FieldProcessing/Email/IcsDataLoader.php index c20df73541..f4c932ebb2 100644 --- a/application/Espo/Classes/FieldProcessing/Email/IcsDataLoader.php +++ b/application/Espo/Classes/FieldProcessing/Email/IcsDataLoader.php @@ -30,7 +30,10 @@ namespace Espo\Classes\FieldProcessing\Email; use Espo\Core\Name\Field; +use Espo\Entities\User; use Espo\Modules\Crm\Entities\Call; +use Espo\Modules\Crm\Entities\Contact; +use Espo\Modules\Crm\Entities\Lead; use Espo\Modules\Crm\Entities\Meeting; use Espo\ORM\Entity; use Espo\ORM\EntityManager; @@ -57,9 +60,9 @@ class IcsDataLoader implements Loader { /** @var array */ private $entityTypeLinkMap = [ - 'User' => 'users', - 'Contact' => 'contacts', - 'Lead' => 'leads', + User::ENTITY_TYPE => Meeting::LINK_USERS, + Contact::ENTITY_TYPE => Meeting::LINK_CONTACTS, + Lead::ENTITY_TYPE => Meeting::LINK_LEADS, ]; public function __construct(private EntityManager $entityManager, private Log $log) diff --git a/application/Espo/Modules/Crm/Business/Event/Invitations.php b/application/Espo/Modules/Crm/Business/Event/Invitations.php index 5fb9593ed5..bcced8a031 100644 --- a/application/Espo/Modules/Crm/Business/Event/Invitations.php +++ b/application/Espo/Modules/Crm/Business/Event/Invitations.php @@ -291,7 +291,9 @@ class Invitations $attendees = []; /** @var iterable $users */ - $users = $this->entityManager->getRelation($entity, 'users')->find(); + $users = $this->entityManager + ->getRelation($entity, Meeting::LINK_USERS) + ->find(); foreach ($users as $it) { $address = $it->getEmailAddress(); @@ -303,7 +305,9 @@ class Invitations } /** @var iterable $contacts */ - $contacts = $this->entityManager->getRelation($entity, 'contacts')->find(); + $contacts = $this->entityManager + ->getRelation($entity, Meeting::LINK_CONTACTS) + ->find(); foreach ($contacts as $it) { $address = $it->getEmailAddress(); @@ -315,7 +319,9 @@ class Invitations } /** @var iterable $leads */ - $leads = $this->entityManager->getRelation($entity, 'leads')->find(); + $leads = $this->entityManager + ->getRelation($entity, Meeting::LINK_LEADS) + ->find(); foreach ($leads as $it) { $address = $it->getEmailAddress(); @@ -334,7 +340,9 @@ class Invitations $timeZone = $this->applicationConfig->getTimeZone(); if ($invitee instanceof User) { - $preferences = $this->entityManager->getRepositoryByClass(Preferences::class)->getById($invitee->getId()); + $preferences = $this->entityManager + ->getRepositoryByClass(Preferences::class) + ->getById($invitee->getId()); if ($preferences && $preferences->getTimeZone()) { $timeZone = $preferences->getTimeZone(); diff --git a/application/Espo/Modules/Crm/Classes/FieldProcessing/Call/PhoneNumberMapLoader.php b/application/Espo/Modules/Crm/Classes/FieldProcessing/Call/PhoneNumberMapLoader.php index 3f3fec1fc4..873b3b88f2 100644 --- a/application/Espo/Modules/Crm/Classes/FieldProcessing/Call/PhoneNumberMapLoader.php +++ b/application/Espo/Modules/Crm/Classes/FieldProcessing/Call/PhoneNumberMapLoader.php @@ -30,6 +30,9 @@ namespace Espo\Modules\Crm\Classes\FieldProcessing\Call; use Espo\Modules\Crm\Entities\Call; +use Espo\Modules\Crm\Entities\Contact; +use Espo\Modules\Crm\Entities\Lead; +use Espo\Modules\Crm\Entities\Meeting; use Espo\ORM\Entity; use Espo\Core\ORM\Entity as CoreEntity; use Espo\Core\FieldProcessing\Loader; @@ -55,16 +58,16 @@ class PhoneNumberMapLoader implements Loader assert($entity instanceof CoreEntity); - $contactIdList = $entity->getLinkMultipleIdList('contacts'); + $contactIdList = $entity->getLinkMultipleIdList(Meeting::LINK_CONTACTS); if (count($contactIdList)) { - $this->populate($map, 'Contact', $contactIdList); + $this->populate($map, Contact::ENTITY_TYPE, $contactIdList); } - $leadIdList = $entity->getLinkMultipleIdList('leads'); + $leadIdList = $entity->getLinkMultipleIdList(Meeting::LINK_LEADS); if (count($leadIdList)) { - $this->populate($map, 'Lead', $leadIdList); + $this->populate($map, Lead::ENTITY_TYPE, $leadIdList); } $entity->set('phoneNumbersMap', $map); diff --git a/application/Espo/Modules/Crm/Entities/Call.php b/application/Espo/Modules/Crm/Entities/Call.php index aa27d5f748..29b77d9125 100644 --- a/application/Espo/Modules/Crm/Entities/Call.php +++ b/application/Espo/Modules/Crm/Entities/Call.php @@ -131,34 +131,34 @@ class Call extends Entity public function getUsers(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('users'); + return $this->getValueObject(Meeting::LINK_USERS); } public function getContacts(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('contacts'); + return $this->getValueObject(Meeting::LINK_CONTACTS); } public function getLeads(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('leads'); + return $this->getValueObject(Meeting::LINK_LEADS); } public function setUsers(LinkMultiple $users): self { - return $this->setValueObject('users', $users); + return $this->setValueObject(Meeting::LINK_USERS, $users); } public function setContacts(LinkMultiple $contacts): self { - return $this->setValueObject('contacts', $contacts); + return $this->setValueObject(Meeting::LINK_CONTACTS, $contacts); } public function setLeads(LinkMultiple $leads): self { - return $this->setValueObject('leads', $leads); + return $this->setValueObject(Meeting::LINK_LEADS, $leads); } public function setParent(Entity|LinkParent|null $parent): self diff --git a/application/Espo/Modules/Crm/Entities/Meeting.php b/application/Espo/Modules/Crm/Entities/Meeting.php index a2e6b68939..19dfdff04c 100644 --- a/application/Espo/Modules/Crm/Entities/Meeting.php +++ b/application/Espo/Modules/Crm/Entities/Meeting.php @@ -51,6 +51,10 @@ class Meeting extends Entity public const STATUS_HELD = 'Held'; public const STATUS_NOT_HELD = 'Not Held'; + public const LINK_USERS = 'users'; + public const LINK_CONTACTS = 'contacts'; + public const LINK_LEADS = 'leads'; + public function setName(?string $name): self { return $this->set(Field::NAME, $name); @@ -136,34 +140,34 @@ class Meeting extends Entity public function getUsers(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('users'); + return $this->getValueObject(self::LINK_USERS); } public function getContacts(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('contacts'); + return $this->getValueObject(self::LINK_CONTACTS); } public function getLeads(): LinkMultiple { /** @var LinkMultiple */ - return $this->getValueObject('leads'); + return $this->getValueObject(self::LINK_LEADS); } public function setUsers(LinkMultiple $users): self { - return $this->setValueObject('users', $users); + return $this->setValueObject(self::LINK_USERS, $users); } public function setContacts(LinkMultiple $contacts): self { - return $this->setValueObject('contacts', $contacts); + return $this->setValueObject(self::LINK_CONTACTS, $contacts); } public function setLeads(LinkMultiple $leads): self { - return $this->setValueObject('leads', $leads); + return $this->setValueObject(self::LINK_LEADS, $leads); } public function setParent(Entity|LinkParent|null $parent): self diff --git a/application/Espo/Modules/Crm/Tools/Meeting/Invitation/Sender.php b/application/Espo/Modules/Crm/Tools/Meeting/Invitation/Sender.php index 25cf0e6095..a05bc6e1aa 100644 --- a/application/Espo/Modules/Crm/Tools/Meeting/Invitation/Sender.php +++ b/application/Espo/Modules/Crm/Tools/Meeting/Invitation/Sender.php @@ -30,7 +30,6 @@ namespace Espo\Modules\Crm\Tools\Meeting\Invitation; use Espo\Core\Binding\BindingContainerBuilder; -use Espo\Core\Exceptions\Error; use Espo\Core\Exceptions\Forbidden; use Espo\Core\InjectableFactory; use Espo\Core\Mail\Exceptions\SendingError; @@ -67,7 +66,6 @@ class Sender * @param Meeting|Call $entity * @param ?Invitee[] $targets * @return Entity[] Entities an invitation was sent to. - * @throws Error * @throws SendingError * @throws Forbidden */ @@ -80,7 +78,6 @@ class Sender * @param Meeting|Call $entity * @param ?Invitee[] $targets * @return Entity[] Entities an invitation was sent to. - * @throws Error * @throws SendingError * @throws Forbidden */ @@ -93,7 +90,6 @@ class Sender /** * @param ?Invitee[] $targets * @return Entity[] - * @throws Error * @throws SendingError * @throws Forbidden */ @@ -102,9 +98,9 @@ class Sender $this->checkStatus($entity, $type); $linkList = [ - 'users', - 'contacts', - 'leads', + Meeting::LINK_USERS, + Meeting::LINK_CONTACTS, + Meeting::LINK_LEADS, ]; $sender = $this->getSender();