Пример #1
0
 /**
  * @param ObjectManager $om
  */
 protected function loadEmailsDemo(ObjectManager $om)
 {
     $adminUser = $om->getRepository('OroUserBundle:User')->findOneByUsername('admin');
     foreach ($this->templates as $index => $template) {
         $owner = $this->getReference('simple_user');
         $simpleUser2 = $this->getReference('simple_user2');
         $origin = $this->mailerProcessor->getEmailOrigin($owner->getEmail());
         $emailUser = $this->emailEntityBuilder->emailUser($template['Subject'], $owner->getEmail(), $owner->getEmail(), new \DateTime($template['SentAt']), new \DateTime('now'), new \DateTime('now'), Email::NORMAL_IMPORTANCE, "cc{$index}@example.com", "bcc{$index}@example.com");
         $emailUser->setFolder($origin->getFolder(FolderType::SENT));
         $emailUser->getEmail()->addActivityTarget($owner);
         $emailUser->getEmail()->addActivityTarget($simpleUser2);
         $emailUser->getEmail()->setHead(true);
         $emailUser->setOrganization($owner->getOrganization());
         $emailUser->setOwner($owner);
         $emailBody = $this->emailEntityBuilder->body("Hi,\n" . $template['Text'], false, true);
         $emailUser->getEmail()->setEmailBody($emailBody);
         $emailUser->getEmail()->setMessageId(sprintf('<id+&?= %s@%s>', $index, 'bap.migration.generated'));
         $this->setReference('email_' . ($index + 1), $emailUser->getEmail());
         $this->setReference('emailUser_' . ($index + 1), $emailUser);
         $this->setReference('emailBody_' . ($index + 1), $emailBody);
     }
     $emailUser->setOwner($adminUser);
     $this->setReference('emailUser_for_mass_mark_test', $emailUser);
     $this->emailEntityBuilder->getBatch()->persist($om);
 }
 /**
  * @param string               $subject
  * @param string               $messageId
  * @param string               $from
  * @param string|string[]      $to
  * @param string|string[]|null $cc
  * @param string|string[]|null $bcc
  *
  * @return Email
  */
 protected function createEmail($subject, $messageId, $from, $to, $cc = null, $bcc = null)
 {
     $origin = $this->mailerProcessor->getEmailOrigin($this->getReference('simple_user')->getEmail());
     $folder = $origin->getFolder(FolderType::SENT);
     $date = new \DateTime('now', new \DateTimeZone('UTC'));
     $emailUser = $this->emailEntityBuilder->emailUser($subject, $from, $to, $date, $date, $date, Email::NORMAL_IMPORTANCE, $cc, $bcc);
     $emailUser->setFolder($folder);
     $emailUser->getEmail()->setMessageId($messageId);
     return $emailUser->getEmail();
 }
Пример #3
0
 /**
  * @param ObjectManager $om
  */
 protected function loadEmailsDemo(ObjectManager $om)
 {
     $contacts = $om->getRepository('OroCRMContactBundle:Contact')->findAll();
     $contactCount = count($contacts);
     for ($i = 0; $i < 100; ++$i) {
         $contactRandom = rand(0, $contactCount - 1);
         /** @var Contact $contact */
         $contact = $contacts[$contactRandom];
         $owner = $contact->getOwner();
         $origin = $this->mailerProcessor->getEmailOrigin($owner->getEmail());
         $randomTemplate = array_rand($this->templates);
         $emailUser = $this->addEmailUser($randomTemplate, $owner, $contact, $origin);
         if ($i % 7 == 0) {
             $thread = new EmailThread();
             $om->persist($thread);
             $emailUser->getEmail()->setThread($thread);
             $randomNumber = rand(1, 7);
             for ($j = 0; $j < $randomNumber; ++$j) {
                 $eu = $this->addEmailUser($randomTemplate, $owner, $contact, $origin);
                 $eu->getEmail()->setSubject('Re: ' . $emailUser->getEmail()->getSubject());
                 $eu->getEmail()->setThread($thread);
                 $eu->getEmail()->setHead(false);
             }
         }
         $this->emailEntityBuilder->getBatch()->persist($om);
     }
 }
Пример #4
0
 /**
  * @param ObjectManager $om
  */
 protected function loadEmailsDemo(ObjectManager $om)
 {
     $contacts = $om->getRepository('OroCRMContactBundle:Contact')->findAll();
     $contactCount = count($contacts);
     for ($i = 0; $i < 100; ++$i) {
         $contactRandom = rand(0, $contactCount - 1);
         /** @var Contact $contact */
         $contact = $contacts[$contactRandom];
         $owner = $contact->getOwner();
         $origin = $this->mailerProcessor->getEmailOrigin($owner->getEmail());
         $randomTemplate = array_rand($this->templates);
         $email = $this->emailEntityBuilder->email($this->templates[$randomTemplate]['Subject'], $owner->getEmail(), $contact->getPrimaryEmail()->getEmail(), new \DateTime('now'), new \DateTime('now'), new \DateTime('now'));
         $email->addFolder($origin->getFolder(EmailFolder::SENT));
         $emailBody = $this->emailEntityBuilder->body("Hi,\n" . $this->templates[$randomTemplate]['Text'], false, true);
         $email->setEmailBody($emailBody);
         $email->setMessageId(sprintf('id.%s@%s', uniqid(), '@bap.migration.generated'));
         $this->emailEntityBuilder->getBatch()->persist($om);
     }
 }
Пример #5
0
 /**
  * @param ObjectManager $om
  */
 protected function loadEmailsDemo(ObjectManager $om)
 {
     foreach ($this->templates as $index => $template) {
         $owner = $this->getReference('simple_user');
         $simpleUser2 = $this->getReference('simple_user2');
         $origin = $this->mailerProcessor->getEmailOrigin($owner->getEmail());
         $emailUser = $this->emailEntityBuilder->emailUser($template['Subject'], $owner->getEmail(), $owner->getEmail(), new \DateTime('now'), new \DateTime('now'), new \DateTime('now'), Email::NORMAL_IMPORTANCE, "cc{$index}@example.com", "bcc{$index}@example.com");
         $emailUser->setFolder($origin->getFolder(FolderType::SENT));
         $emailUser->getEmail()->addActivityTarget($owner);
         $emailUser->getEmail()->addActivityTarget($simpleUser2);
         $emailUser->setOrganization($owner->getOrganization());
         $emailUser->setOwner($owner);
         $emailBody = $this->emailEntityBuilder->body("Hi,\n" . $template['Text'], false, true);
         $emailUser->getEmail()->setEmailBody($emailBody);
         $emailUser->getEmail()->setMessageId(sprintf('id.%s@%s', uniqid(), '@bap.migration.generated'));
         $this->setReference('email_' . ($index + 1), $emailUser->getEmail());
         $this->setReference('emailBody_' . ($index + 1), $emailBody);
     }
     $this->emailEntityBuilder->getBatch()->persist($om);
 }