/** * @param string $email * @param string $token * * @return \Generated\Shared\Transfer\SendMailResponsesTransfer */ public function send($email, $token) { $mailTransfer = new MailTransfer(); $mailRecipientTransfer = new MailRecipientTransfer(); $mailRecipientTransfer->setEmail($email); $mailTransfer->addRecipient($mailRecipientTransfer); $mailTransfer->setSubject(static::SUBJECT); $mailTransfer->setTemplateName(static::TEMPLATE); $mailTransfer->setMerge(true); $mailTransfer->setMergeLanguage('handlebars'); $mailTransfer->setGlobalMergeVars(['reset_password_token' => $token]); $this->getFactory()->getMailFacade()->sendMail($mailTransfer); }
/** * @return void */ public function testSendMailContainsGlobalMergeVars() { $mailTransfer = new MailTransfer(); $mailTransfer->setGlobalMergeVars(['MergeVar1' => 'MergeValue1', 'MergeVar2' => 'MergeValue2']); $this->mandrillMock->messages->expects($this->once())->method('sendTemplate')->with($this->anything(), $this->anything(), $this->arrayContainsKeyEqualTo('global_merge_vars', [['name' => 'MergeVar1', 'content' => 'MergeValue1'], ['name' => 'MergeVar2', 'content' => 'MergeValue2']]), $this->anything(), $this->anything(), $this->anything()); $this->mailSender->sendMail($mailTransfer); }
/** * @param \Generated\Shared\Transfer\MailTransfer $mailTransfer * @param array $globalMergeVars * * @return void */ protected function setMailMergeData(MailTransfer $mailTransfer, array $globalMergeVars = []) { $mailTransfer->setMerge(true); $mailTransfer->setMergeLanguage($this->getMergeLanguage()); $mailTransfer->setGlobalMergeVars($globalMergeVars); }