예제 #1
0
 /**
  * @param User $user
  *
  * @return bool
  */
 public function sendCreationMessage(User $user)
 {
     $locale = $user->getLocale();
     $content = $this->contentManager->getTranslatedContent(['type' => 'claro_mail_registration']);
     $displayedLocale = isset($content[$locale]) ? $locale : $this->ch->getParameter('locale_language');
     $body = $content[$displayedLocale]['content'];
     $subject = $content[$displayedLocale]['title'];
     $url = $this->router->generate('claro_security_validate_email', ['hash' => $user->getEmailValidationHash()], true);
     $validationLink = $this->translator->trans('email_validation_url_display', ['%url%' => $url], 'platform');
     $body = str_replace('%first_name%', $user->getFirstName(), $body);
     $body = str_replace('%last_name%', $user->getLastName(), $body);
     $body = str_replace('%username%', $user->getUsername(), $body);
     $body = str_replace('%password%', $user->getPlainPassword(), $body);
     $body = str_replace('%validation_mail%', $validationLink, $body);
     $subject = str_replace('%platform_name%', $this->ch->getParameter('name'), $subject);
     return $this->send($subject, $body, [$user], null, [], true);
 }