/** * Test for createHash() * * @return void * @test */ public function createHashReturnsString() { $form = new Form(); $form->_setProperty('uid', 123); $mail = new Mail(); $mail->_setProperty('uid', 123); $mail->_setProperty('pid', 124); $mail->setForm($form); $result = OptinUtility::createOptinHash($mail); $this->assertEquals('abf068777a', $result); $this->assertTrue(strlen($result) === 10); }
/** * Test for createHash() * * @return void * @test */ public function createHashReturnsString() { $GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey'] = 'abcdef'; $form = new Form(); $form->_setProperty('uid', 123); $mail = new Mail(); $mail->_setProperty('uid', 123); $mail->_setProperty('pid', 124); $mail->setForm($form); $result = OptinUtility::createOptinHash($mail); $this->assertEquals('cf06c6db71', $result); $this->assertTrue(strlen($result) === 10); }
/** * Send Optin Confirmation Mail to user * * @param Mail $mail * @return void */ protected function sendConfirmationMail(Mail &$mail) { $email = ['template' => 'Mail/OptinMail', 'receiverName' => $this->mailRepository->getSenderNameFromArguments($mail, [$this->conf['sender.']['default.'], 'senderName']), 'receiverEmail' => $this->mailRepository->getSenderMailFromArguments($mail), 'senderName' => $this->settings['sender']['name'], 'senderEmail' => $this->settings['sender']['email'], 'subject' => $this->contentObject->cObjGetSingle($this->conf['optin.']['subject'], $this->conf['optin.']['subject.']), 'rteBody' => '', 'format' => $this->settings['sender']['mailformat'], 'variables' => ['hash' => OptinUtility::createOptinHash($mail), 'mail' => $mail]]; TypoScriptUtility::overwriteValueFromTypoScript($email['receiverName'], $this->conf['optin.']['overwrite.'], 'name'); TypoScriptUtility::overwriteValueFromTypoScript($email['receiverEmail'], $this->conf['optin.']['overwrite.'], 'email'); TypoScriptUtility::overwriteValueFromTypoScript($email['senderName'], $this->conf['optin.']['overwrite.'], 'senderName'); TypoScriptUtility::overwriteValueFromTypoScript($email['senderEmail'], $this->conf['optin.']['overwrite.'], 'senderEmail'); $this->sendMailService->sendEmailPreflight($email, $mail, $this->settings, 'optin'); }