public function postAction() { // Params $params = $this->_helper->param(); $response = $this->_helper->response(); $valid = true; // Validatation // Exist user $count = Doctrine_Core::getTable('Model_Entity_User')->findByemail($params['email'])->count(); if ($count > 0) { $response->addNotification(Kebab_Notification::ERR, 'There is a user with this email'); $valid = false; } // Invalid email address if (!Kebab_Validation_Email::isValid($params['email'])) { $response->addNotification(Kebab_Notification::ERR, 'Invalid email address'); $valid = false; } // Check Fullname only Alpha chracter enable if (!Kebab_Validation_FullName::isValid($params['fullName'])) { $response->addNotification(Kebab_Notification::ERR, 'Only alpha character enable.'); $valid = false; } // Model if ($valid) { $user = Kebab_Model_User::invite($params['fullName'], $params['email']); } // Response if ($valid && is_object($user)) { $this->sendInviteMail($user, $params['message']); $response->setSuccess(true); } $response->getResponse(); }
public function postAction() { $email = $this->_request->getParam('email'); $response = $this->_helper->response(); if (Kebab_Validation_Email::isValid($email)) { // Create user object $user = Doctrine_Core::getTable('Model_Entity_User')->findOneBy('email', $email); $password = Kebab_Security::createPassword(); if ($user !== false) { $user->password = md5($password); $user->save(); $configParam = Zend_Registry::get('config')->kebab->mail; $smtpServer = $configParam->smtpServer; $config = $configParam->config->toArray(); // Mail phtml $view = new Zend_View(); $view->setScriptPath(APPLICATION_PATH . '/views/mails/'); $view->assign('password', $password); $transport = new Zend_Mail_Transport_Smtp($smtpServer, $config); $mail = new Zend_Mail('UTF-8'); $mail->setFrom($configParam->from, 'Kebab Project'); $mail->addTo($user->email, $user->fullName); $mail->setSubject('Reset Password'); $mail->setBodyHtml($view->render('forgot-password.phtml')); $mail->send($transport); $response->setSuccess(true)->getResponse(); } else { $response->addNotification(Kebab_Notification::ERR, 'There isn\'t user with this email')->getResponse(); } } else { $response->addError('email', 'Invalid email format')->getResponse(); } }
public function postAction() { $params = $this->_helper->param(); $response = $this->_helper->response(); // Check email $isValidEmail = Kebab_Validation_Email::isValid($params['email']); $isUnusedEmail = is_object(Doctrine_Core::getTable('Model_Entity_User')->findOneByemail($params['email'])); if (!$isValidEmail) { throw new Kebab_Exception("Invalid email wanna to signup."); } if (!$isUnusedEmail) { $user = Kebab_Model_User::signUp($params['fullName'], $params['email']); $this->sendSignUpMail($user); $response->setSuccess(true)->getResponse(); } else { $response->addError('email', 'An other user uses this email'); } $response->getResponse(); }