public function update(NewsletterEvent $event) { if (null !== ($nl = NewsletterQuery::create()->findPk($event->getId()))) { $nl->setEmail($event->getEmail())->setFirstname($event->getFirstname())->setLastname($event->getLastname())->setLocale($event->getLocale())->save(); $event->setNewsletter($nl); } }
/** * @since 2.3.0-alpha2 */ public function confirmSubscription(NewsletterEvent $event) { $this->mailer->sendEmailMessage('newsletter_subscription_confirmation', [ConfigQuery::getStoreEmail() => ConfigQuery::getStoreName()], [$event->getEmail() => $event->getFirstname() . " " . $event->getLastname()], ['email' => $event->getEmail(), 'firstname' => $event->getFirstname(), 'lastname' => $event->getLastname()], $event->getLocale()); }
protected function apiAddUser(NewsletterEvent $event, $function) { // Check if the email is already registred $model = MailjetNewsletterQuery::create()->findOneByEmail($event->getEmail()); if (null === $model) { list($status, $data) = $this->api->post(MailjetClient::RESOURCE_CONTACT, ["Email" => $event->getEmail(), "Name" => $event->getLastname() . " " . $event->getFirstname()]); $this->logAfterAction(sprintf("Email address correctly added for %s '%s'", $function, $event->getEmail()), sprintf("The following email address has been refused by mailjet: '%s' for action '%s'", $event->getEmail(), $function), $status); $data = json_decode($data, true); $model = new MailjetNewsletter(); $model->setId($data["Data"][0]["ID"])->setEmail($event->getEmail()); } return $model; }