/** * @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(); }
/** * @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); } }
/** * @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); } }
/** * @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); }