Rev 1 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
<?phpdeclare(strict_types=1);namespace LeadersLinked\Library;use Laminas\Db\Adapter\AdapterInterface;use LeadersLinked\Model\EmailTemplate;use LeadersLinked\Model\Email;use LeadersLinked\Mapper\EmailMapper;class QueueEmail{/**** @var AdapterInterface*/private $adapter;/**** @param AdapterInterface $adapter*/public function __construct($adapter){$this->adapter = $adapter;}/**** @param EmailTemplate $emailTemplate* @param array $arrayCont* @param string $to_address* @param string $to_name* @return boolean*/public function processEmailTemplate($emailTemplate, $arrayCont, $to_address, $to_name){$subject = trim(stripslashes($emailTemplate->subject));$message = trim(stripslashes($emailTemplate->content));foreach($arrayCont as $key => $val){$message = str_replace('[' . $key .']', $val, $message);$subject = str_replace('[' . $key .']', $val, $subject);}$email = new Email();$email->content = json_encode(['to_address' => $to_address,'to_name' => $to_name,'cc' => [],'bcc' => [],'subject' => $subject,'message' => $message,]);$email->status = Email::STATUS_PENDING;$email->tried = 0;$emailMapper = EmailMapper::getInstance($this->adapter);return $emailMapper->insert($email);}}