![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/app/bundles/EmailBundle/OptionsAccessor/ |
<?php namespace Mautic\EmailBundle\OptionsAccessor; use Mautic\CoreBundle\Form\DataTransformer\ArrayStringTransformer; use Mautic\UserBundle\Entity\User; class EmailToUserAccessor { private ArrayStringTransformer $transformer; public function __construct( private array $config ) { $this->transformer = new ArrayStringTransformer(); } public function getEmailID(): int { return (int) $this->config['useremail']['email']; } /** * @return bool */ public function shouldSentToOwner() { return empty($this->config['to_owner']) ? false : $this->config['to_owner']; } /** * Gets array of User ids formated for EmailModel. * * @param User|null $owner If Owner is passed in and config is setted for it, adds owner to returned array */ public function getUserIdsToSend(User $owner = null): array { $userIds = empty($this->config['user_id']) ? [] : $this->config['user_id']; $users = []; if ($userIds) { foreach ($userIds as $userId) { $users[] = ['id' => $userId]; } } if ($this->shouldSentToOwner() && $owner && !in_array($owner->getId(), $userIds)) { $users[] = ['id' => $owner->getId()]; } return $users; } /** * @return array */ public function getToFormatted() { $property = 'to'; return empty($this->config[$property]) ? [] : $this->transformer->reverseTransform($this->config[$property]); } /** * @return array */ public function getCcFormatted() { $property = 'cc'; return empty($this->config[$property]) ? [] : $this->transformer->reverseTransform($this->config[$property]); } /** * @return array */ public function getBccFormatted() { $property = 'bcc'; return empty($this->config[$property]) ? [] : $this->transformer->reverseTransform($this->config[$property]); } }