Beispiel #1
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);
 }