Пример #1
0
 /**
  * @param EmailSendEvent $event
  *
  * @return void
  */
 public function onEmailGenerate(EmailSendEvent $event)
 {
     $content = $event->getContent();
     $plainText = $event->getPlainText();
     $source = $event->getSource();
     $email = $event->getEmail();
     $clickthrough = array('source' => $source, 'email' => $email != null ? $email->getId() : null, 'stat' => $event->getIdHash());
     $lead = $event->getLead();
     if ($lead !== null) {
         $clickthrough['lead'] = $lead['id'];
     }
     $this->emailIsInternalSend = $event->isInternalSend();
     $this->emailEntity = $event->getEmail();
     // Generate page tokens first so they are available to convert to trackables
     $tokens = array_merge($this->generatePageTokens($content . $plainText, $event->shouldAppendClickthrough() ? $clickthrough : array()), $this->generateExternalLinkTokens($content . $plainText, $clickthrough));
     $event->addTokens($tokens);
     // Convert links to trackables if there is an email entity
     if (!$event->isInternalSend() && null !== $email) {
         $event->addTokens($this->generateEmailTokens($clickthrough, $event));
     }
 }
Пример #2
0
 /**
  * @param EmailSendEvent $event
  *
  * @return void
  */
 public function onEmailGenerate(EmailSendEvent $event)
 {
     $content = $event->getContent();
     $plainText = $event->getPlainText();
     $clickthrough = $event->shouldAppendClickthrough() ? $event->generateClickthrough() : array();
     $this->emailIsInternalSend = $event->isInternalSend();
     $this->emailEntity = $event->getEmail();
     $tokens = array_merge($this->generatePageTokens($content . $plainText, $clickthrough), $this->generateExternalLinkTokens($content . $plainText, $clickthrough));
     $event->addTokens($tokens);
 }
Пример #3
0
 /**
  * @param EmailSendEvent $event
  */
 public function onEmailGenerate(EmailSendEvent $event)
 {
     $content = $event->getContent();
     $plainText = $event->getPlainText();
     $clickthrough = $event->shouldAppendClickthrough() ? $event->generateClickthrough() : [];
     $this->emailIsInternalSend = $event->isInternalSend();
     $this->emailEntity = $event->getEmail();
     $tokens = $this->tokenHelper->findPageTokens($content . $plainText, $clickthrough);
     $event->addTokens($tokens);
 }