public static function getInstance() { if (is_null(self::$_instance)) { self::$_instance = new self(); self::$_instance->_table = 'fakemail'; } return self::$_instance; }
public function signupAction() { $this->_helper->layout->setLayout('entrance'); $request = $this->getRequest(); $form = new Application_Form_UserSignup(); if ($this->isLoggedin()) { $this->view->loggedin = true; } else { if ($this->getRequest()->isPost()) { if ('0' === $this->getParam('agree')) { $form->getElement('agree')->addError($this->_translate->_('signup_not_agreed')); } if ($form->isValid($request->getPost())) { $valid = true; $email = strtolower($form->getValue('email')); if ($form->getValue('password') !== $form->getValue('repassword')) { $form->getElement('repassword')->addError($this->_translate->_('signup_not_matching')); $valid = false; } if ($this->_userRepo->emailExists($email) || Application_Model_SignUpRepository::getInstance()->emailExists($email)) { $form->getElement('email')->addError($this->_translate->_('signup_existing')); $valid = false; } $domain = substr($email, strpos($email, '@') + 1); if (!Application_Model_FakeMailRepository::getInstance()->isValid($domain)) { $form->getElement('email')->addError($this->_translate->_('signup_fakemail')); $valid = false; } if ($valid) { $user = new Application_Model_Entity_User(); $user->setFirstName($form->getValue('firstname')); $user->setLastName($form->getValue('lastname')); $user->setEmail($email); $user->setPassword(Application_Model_Hash::hash($form->getValue('password'))); $code = Application_Model_SignUpRepository::getInstance()->signup($user, '1' === $form->getValue('agreenotify'), $form->getValue('code')); $this->_mail->sendSignUp($user, $code); $this->_mail->report($user->getName() . ' signed up on feader with ' . $user->getEmail()); echo '<div class="center">' . $this->_translate->_('signup_success') . '</div>'; return; } } $this->view->form = $form; } else { $form->getElement('code')->setValue($this->getParam('code')); $this->view->form = $form; } } }