Exemplo n.º 1
0
 /**
  * @param string $securityKey
  *
  * @return bool
  */
 public function trackQueueItem($securityKey)
 {
     $queueItem = $this->mainRepository->getOneBySecurityKey($securityKey);
     if ($queueItem) {
         $queueItem->setIsTracked(true);
         return $this->saveEntity($queueItem);
     }
     return false;
 }
Exemplo n.º 2
0
 /**
  * @return ViewModel
  */
 public function previewAction()
 {
     /** @var QueueItem $queueItem */
     $queueItem = $this->queueItemRepository->getOneBySecurityKey($this->params('securityKey'));
     if (!$queueItem) {
         return $this->redirect()->toRoute(static::ERROR_ROUTE);
     }
     $this->prepareMessageBuilder($queueItem);
     $message = $queueItem->getMessage();
     $template = $message->getCampaign()->getTemplate();
     $previewData = $this->messageBuilder->getBody($message->getBody(), $template->getBody());
     $this->layout('layout/empty');
     return new ViewModel(['preview' => $previewData]);
 }
Exemplo n.º 3
0
 /**
  * @covers DmMailer\Repository\QueueItem
  */
 public function testGetOneBySecurityKey()
 {
     $actualResult = $this->sut->getOneBySecurityKey('security_key_1');
     $this->assertInstanceOf('DmMailer\\Entity\\QueueItem', $actualResult);
     $this->assertEquals('*****@*****.**', $actualResult->getSubscriber()->getEmailAddress());
     $this->assertEquals('Halloween recipes', $actualResult->getMessage()->getSubject());
 }