Esempio n. 1
0
 /**
  * @param Entity\Subscriber $entity
  * @param Entity\Campaign   $campaign
  *
  * @return bool
  */
 public function handlePost(Entity\Subscriber $entity, Entity\Campaign $campaign)
 {
     $form = $this->getForm();
     if ($this->request->isPost()) {
         $form->setData($this->request->getPost());
         if ($form->isValid()) {
             $entity->removeCampaign($campaign);
             $this->saveEntity($entity);
             return true;
         }
     }
     return false;
 }
Esempio n. 2
0
 /**
  * @param Entity $entity
  *
  * @return bool
  */
 public function handlePost(Entity $entity)
 {
     $form = $this->getForm();
     if ($this->request->isPost()) {
         $form->setData($this->request->getPost());
         if ($form->isValid()) {
             $entity->populate($this->getPopulateData());
             $this->saveEntity($entity);
             return true;
         }
     }
     $form->bind($entity);
     return false;
 }
Esempio n. 3
0
 /**
  * @param Entity\Subscriber $subscriber
  * @param Entity\Campaign   $campaign
  *
  * @return bool
  */
 public function handlePost(Entity\Subscriber $subscriber, Entity\Campaign $campaign)
 {
     $form = $this->getForm();
     if (!$this->request->isPost()) {
         return false;
     }
     $form->setData($this->request->getPost());
     if (!$form->isValid()) {
         return false;
     }
     $subscriber->populate($form->getData());
     if (!$subscriber->hasCampaign($campaign)) {
         $subscriber->addCampaign($campaign);
     }
     $systemMessage = $this->messageRepository->getSystemMessage($campaign->getId());
     $this->queueMessage($subscriber, $systemMessage);
     return $this->saveEntity($subscriber);
 }
Esempio n. 4
0
 /**
  * @param Subscriber $subscriber
  * @param Campaign   $campaign
  * @param string     $subject
  * @param string     $body
  * @param array      $headerLines
  */
 protected function mail(Subscriber $subscriber, Campaign $campaign, $subject, $body, $headerLines = [])
 {
     $mail = $this->sxMail->compose($body);
     $mail->setSender($campaign->getSenderAddress())->setTo($subscriber->getEmailAddress())->setSubject($subject);
     if ($campaign->getFromAddress()) {
         $mail->setFrom($campaign->getFromAddress());
     }
     if ($campaign->getReplyToAddress()) {
         $mail->setReplyTo($campaign->getReplyToAddress());
     }
     foreach ($headerLines as $headerLine) {
         $mail->getHeaders()->addHeaderLine($headerLine);
     }
     $this->sxMail->send($mail);
 }
 /**
  * @param Entity\Subscriber $subscriber
  *
  * @return array int[]
  */
 protected function getCampaignIds(Entity\Subscriber $subscriber)
 {
     $campaignIds = [];
     /** @var $campaign Entity\Campaign */
     foreach ($subscriber->getCampaigns() as $campaign) {
         $campaignIds[] = $campaign->getId();
     }
     return $campaignIds;
 }
 /**
  * @return Entity\Subscriber
  */
 protected function getErin()
 {
     $campaigns = [$this->getReference('winter2014-campaign')];
     $subscriber = new Entity\Subscriber();
     $subscriber->setFullName('Erin Bloke');
     $subscriber->setEmailAddress('*****@*****.**');
     $subscriber->setCampaigns($campaigns);
     return $subscriber;
 }