/** * Saves a new subscription * * * @param \Hochzwei\H2dmailsub\Domain\Model\Address $address * @validate $address \Hochzwei\H2dmailsub\Validation\SubscribeValidator * @return void */ public function saveSubscriptionAction(\Hochzwei\H2dmailsub\Domain\Model\Address $address) { $email = $this->addressRepository->findAddressByEmail($address->getEmail()); $titleKey = 'saveSubscription.title'; $messageKey = 'saveSubscription'; if ($email) { $titleKey = 'saveSubscription.failed.title'; $messageKey = 'saveSubscription.failed'; } else { $address->setHidden(true); $this->addressRepository->add($address); $persistenceManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Persistence\\Generic\\PersistenceManager'); $persistenceManager->persistAll(); $uid = $address->getUid(); $confirmationCode = $this->generateConfirmationCode($uid); if ($this->settings['doubleOptIn']) { $this->notificationService->sendNotification($address, MessageType::SUBSCRIPTION_CONFIRM, $this->settings, $confirmationCode); } else { $this->redirect('confirmSubscription', null, null, ['subscriptionUid' => $uid, 'confirmationCode' => $confirmationCode]); } } $this->view->assignMultiple(['titleKey' => $titleKey, 'messageKey' => $messageKey]); }
/** * @test */ public function setLocalgenderForStringSetsLocalgender() { $this->subject->setLocalgender('Conceived at T3CON10'); $this->assertAttributeEquals('Conceived at T3CON10', 'localgender', $this->subject); }