Exemplo n.º 1
0
 /**
  * @param User $user
  * @param $maxEmailsDisplay
  *
  * @return array
  */
 public function getEmails(User $user, Organization $organization, $maxEmailsDisplay)
 {
     $emails = $this->em->getRepository('OroEmailBundle:Email')->getNewEmails($user, $organization, $maxEmailsDisplay);
     $emailsData = [];
     /** @var $email Email */
     foreach ($emails as $element) {
         $isSeen = $element['seen'];
         $email = $element[0];
         $bodyContent = '';
         try {
             $this->emailCacheManager->ensureEmailBodyCached($email);
             $bodyContent = $this->htmlTagHelper->shorten($this->htmlTagHelper->stripTags($this->htmlTagHelper->purify($email->getEmailBody()->getBodyContent())));
         } catch (LoadEmailBodyException $e) {
             // no content
         }
         $emailsData[] = ['route' => $this->router->generate('oro_email_email_reply', ['id' => $email->getId()]), 'id' => $email->getId(), 'seen' => $isSeen, 'subject' => $email->getSubject(), 'bodyContent' => $bodyContent, 'fromName' => $email->getFromName(), 'linkFromName' => $this->getFromNameLink($email)];
     }
     return $emailsData;
 }
 /**
  * {@inheritdoc}
  */
 public function getDescription($entity)
 {
     /** @var $entity Email */
     if ($entity->getEmailBody()) {
         $body = $entity->getEmailBody()->getBodyContent();
         $content = $this->htmlTagHelper->purify($body);
         $content = $this->htmlTagHelper->stripTags($content);
         $content = $this->htmlTagHelper->shorten($content);
         return $content;
     }
     return null;
 }
Exemplo n.º 3
0
 /**
  * @dataProvider shortStringProvider
  */
 public function testGetShort($expected, $actual, $maxLength)
 {
     $shortBody = $this->helper->shorten($actual, $maxLength);
     $this->assertEquals($expected, $shortBody);
 }