public function indexAction() { $form = new RegisterForm(); if ($this->request->isPost()) { $password = $this->request->getPost("password"); $repeatPassword = $this->request->getPost("repeatPassword"); if ($password != $repeatPassword) { $this->flash->error('Passwords are different'); } else { $user = new User(); if (!$form->isValid($_POST, $user)) { foreach ($form->getMessages() as $message) { $this->flash->error((string) $message); } } else { $user->password = $this->security->hash($user->password); $user->userprofile = new Userprofile(); $user->usercard = new Usercard(); if ($user->save() == false) { foreach ($user->getMessages() as $message) { $this->flash->error((string) $message); } } else { $this->tag->setDefault('email', ''); $this->tag->setDefault('password', ''); $this->flash->success('Thanks for sign-up! Log in to start Advanture</h6>'); return $this->forward('session/index'); } } } } $this->view->form = $form; }
public function registrationAction(Request $request) { if (Session::has('user')) { header('Location: /'); } $form = new RegisterForm($request); if ($request->isPost()) { if ($form->isValid()) { if ($form->validPassword()) { if ($form->passwordCheck()) { $password = new Password($form->password); $model = new securityModel(); $params = array('nickname' => $form->nickname, 'first_name' => $form->first_name, 'last_name' => $form->last_name, 'email' => $form->email, 'password' => $password); $status = $model->addUser($params); if ($status == 'Success') { Session::setFlash('Well done! Now you can Login'); return $this->render('login', $params); } else { Session::setFlash('This nickname or email are already used, try another one'); } } else { Session::setFlash('Password not match'); } } else { Session::setFlash('Password has to consist more than 6 symbols, but less then 32'); } } else { Session::setFlash('Fill the fields'); } } $args = array('nickname' => $form->nickname, 'first_name' => $form->first_name, 'last_name' => $form->last_name, 'email' => $form->email); return $this->render('registration', $args); }
public function indexAction() { $form = new RegisterForm(); if ($this->request->isPost()) { if ($form->isValid($this->request->getPost()) != false) { $user = new Users(); $user->assign(array('name' => $this->request->getPost('name', 'striptags'), 'email' => $this->request->getPost('email'), 'number' => $this->request->getPost('number'), 'password' => $this->security->hash($this->request->getPost('password')), 'telephone' => $this->request->getPost('telephone'))); if ($user->save()) { return $this->dispatcher->forward(array('controller' => 'index', 'action' => 'index')); } $this->flash->error($user->getMessages()); } } $this->view->form = $form; }
public function processAction() { if (!$this->request->isPost()) { return $this->redirect()->toRoute(NULL, array('controller' => 'Create', 'action' => 'index')); } $post = $this->request->getPost(); $form = new RegisterForm(); $form->setData($post); if (!$form->isValid()) { $model = new ViewModel(array('error' => true, 'form' => $form)); $model->setTemplate('leads/leads/index'); return $model; } $this->createUser($form->getData()); return $this->redirect()->toRoute(NULL, array('controller' => 'Create', 'action' => 'confirm')); }
public function registerAction() { $form = new RegisterForm(); $request = $this->getRequest(); if ($request->isPost() && $request->getPost('register') == 'Register') { $post = $request->getPost(); if ($form->isValid($post)) { if ($this->_user->freeUsername($post['user'])) { $result = $this->_user->register($post); if ($result == 1) { $this->view->loginMsg = self::REG_OK; $this->_forward('login'); } else { $this->view->registerMsg = self::REG_ERROR; } } else { $this->view->registerMsg = self::REG_TAKEN; } } else { $this->view->registerMsg = self::REG_INVALID; } } $this->view->form = $form; }
function registerAction() { $this->view->title = "Register New Account"; $this->view->messages = $this->_flashMessenger->getMessages(); $this->_helper->layout->disableLayout(); $lang = $this->_request->getParam('lang'); if (isset($lang)) { $langNamespace = new Zend_Session_Namespace('Lang'); $langNamespace->lang = $lang; $this->_helper->redirector->gotoSimple('register', 'register', null, array('a' => $this->_request->getParam('a'), 'i' => $this->_request->getParam('i'))); } $db = Zend_Registry::get('db'); $currentTime = date("Y-m-d H:i:s"); $loginform = new LoginForm(); $this->view->form = $loginform; $form = new RegisterForm(); $this->view->registerForm = $form; $signupAuthCodeModel = new SignupAuthCode(); $auth_code = $this->_request->getParam('a'); if ($auth_code) { $form->auth_code->setValue($auth_code); $code = $signupAuthCodeModel->fetchRow("use_date is null and auth_code = '" . $auth_code . "'"); } // auto-fill code and email address if (isset($code) && $code->id) { $this->view->codeId = $code->id; $select1 = $db->select(); $select1->from("invitation_email", "to"); $select1->where("invitation_email.signup_auth_code_id = ?", $code->id); $toEmail = $db->fetchOne($select1); $form->registerEmail->setValue($toEmail); $code->view_date = $currentTime; $code->save(); } //public link $invite_code = $this->_request->getParam('i'); if ($invite_code) { $code2 = $signupAuthCodeModel->fetchRow("public_signup_link = true and auth_code = '" . $invite_code . "'"); $publicLinkValid = false; if (isset($code2)) { $select2 = $db->select(); $select2->from('signup_auth_code', 'count(*)')->where('use_date>date_sub(now(),interval 1 day)')->where('sender =' . $code2->sender)->where('source = "PUBLIC_LINK"')->where('receiver is not null'); $registered = $db->fetchOne($select2); if (intval($registered) < 100) { $publicLinkValid = true; } } } if (isset($code2)) { if ($publicLinkValid) { $codePattern = '1234567890ABCDEFGHIJKLOMNOPQRSTUVWXYZ'; $generatedCode = ''; for ($codeCount = 0; $codeCount < 12; $codeCount++) { $generatedCode = $generatedCode . $codePattern[mt_rand(0, 35)]; } $signupAuthCode = $signupAuthCodeModel->createRow(); $signupAuthCode->auth_code = $generatedCode; $signupAuthCode->create_date = $currentTime; $signupAuthCode->sender = $code2->sender; $signupAuthCode->source = 'PUBLIC_LINK'; $signupAuthCode->auto_invitation = $code2->auto_invitation; $signupAuthCode->save(); $form->auth_code->setValue($generatedCode); } else { $this->_flashMessenger->addMessage($this->view->translate('Sorry_This_register_link_has_been_overused')); $this->_helper->redirector('register', 'register'); } } if ($this->_request->isPost()) { $formData = $this->_request->getPost(); if ($form->isValid($formData)) { $db = Zend_Registry::get('db'); if ($form->getValue('registerPassword') == $form->getValue('repeat')) { // verify auth code $codeModel = new SignupAuthCode(); $code = $codeModel->fetchRow("auth_code='" . $form->getValue('auth_code') . "' and use_date is null"); if ($code) { //check pest if ($code->sender != null) { $consumerModel = new Consumer(); $consumer = $consumerModel->fetchRow("id = " . $code->sender); if ($consumer != null && $consumer->pest == '1') { return; } } //check duplicated email $result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE email = :temp", array('temp' => $form->getValue('registerEmail'))); //check duplicated phone $phone_result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE login_phone = :temp", array('temp' => $form->getValue('loginPhone'))); if ($result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('registerEmail') . $this->view->translate('Register_email_is_invalid'); } else { if ($phone_result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('loginPhone') . $this->view->translate('Register_phone_is_invalid'); } else { $currentTime = date("Y-m-d H:i:s"); // save new consumer $consumerModel = new Consumer(); $row = $consumerModel->createRow(); $row->name = $form->getValue('name'); $row->email = $form->getValue('registerEmail'); $row->login_phone = $form->getValue('loginPhone'); $row->password = md5($form->getValue('registerPassword')); $row->save(); //expire the auth_code $code->receiver = $row->id; $code->use_date = $currentTime; $code->save(); //add points for code sender // if (!empty($code->sender)&& $code->sender!=""){ // $pointRecordModel = new RewardPointTransactionRecord(); // $point = $pointRecordModel->createRow(); // $point->consumer_id = $code->sender; // $point->transaction_id = 2; // $point->date = $currentTime; // $point->point_amount = 5; // $point->save(); // } // send auto intivitaion if (!empty($code->auto_invitation) && $code->auto_invitation != 0) { $campaignInvitationModel = new CampaignInvitation(); $ci = $campaignInvitationModel->createRow(); $ci->consumer_id = $row->id; $ci->campaign_id = $code->auto_invitation; $ci->create_date = $currentTime; $ci->state = "NEW"; $ci->save(); } // Login Automatically $authAdapter = new Zend_Auth_Adapter_DbTable($db); $authAdapter->setTableName('consumer'); $authAdapter->setIdentityColumn('email'); $authAdapter->setCredentialColumn('password'); $authAdapter->setIdentity($form->getValue('registerEmail')); $authAdapter->setCredential(md5($form->getValue('registerPassword'))); $auth = Zend_Auth::getInstance(); $auth->authenticate($authAdapter); $authNamespace = new Zend_Session_Namespace('Zend_Auth'); $authNamespace->user = $row; $this->_flashMessenger->addMessage('Welcome!'); $this->_helper->redirector('index', 'home'); } } } else { $this->view->errMessage = $this->view->translate('Register_err') . $this->view->translate('Register_authcode_is_invalid'); } } else { $this->view->errMessage = $this->view->translate('Register_err') . $this->view->translate('Register_password_is_invalid'); } } else { $form->populate($formData); } } }
/** Register for an account * @access public * @return void */ public function registerAction() { if ($this->_auth->hasIdentity()) { $this->getFlash()->addMessage('You are already logged in and registered.'); $this->_redirect('/users/account'); } else { $salt = $this->_helper->config()->auth->salt; $form = new RegisterForm(); $this->view->form = $form; if ($this->getRequest()->isPost() && $form->isValid($this->_request->getPost())) { $to = array(array('email' => $form->getValue('email'), 'name' => $form->getValue('first_name') . ' ' . $form->getValue('last_name'))); $emailData = array('email' => $form->getValue('email'), 'name' => $form->getValue('first_name') . ' ' . $form->getValue('last_name'), 'activationKey' => md5($form->getValue('username') . $form->getValue('first_name'))); $this->_users->register($form->getValues()); $this->_helper->mailer($emailData, 'activateAccount', $to); $this->getFlash()->addMessage('Your account has been created. Please check your email.'); $this->redirect('/users/account/activate/'); $form->populate($form->getValues()); $this->getFlash()->addMessage('There are a few problems with your registration<br/> Please review and correct them.'); } } }
function registerAction() { $this->view->title = "Register New Account"; $this->view->messages = $this->_flashMessenger->getMessages(); $this->_helper->layout->disableLayout(); $lang = $this->_request->getParam('lang'); if (isset($lang)) { $langNamespace = new Zend_Session_Namespace('Lang'); $langNamespace->lang = $lang; $this->_helper->redirector->gotoSimple('register', 'register', null, array('a' => $this->_request->getParam('a'), 'i' => $this->_request->getParam('i'))); } $db = Zend_Registry::get('db'); $currentTime = date("Y-m-d H:i:s"); $loginform = new LoginForm(); $this->view->form = $loginform; $form = new RegisterForm(); $form->setAttrib('id', 'registerForm'); $this->view->registerForm = $form; $signupAuthCodeModel = new SignupAuthCode(); $auth_code = $this->_request->getParam('a'); if ($auth_code) { $form->auth_code->setValue($auth_code); $code = $signupAuthCodeModel->fetchRow("use_date is null and auth_code = '" . $auth_code . "'"); } // auto-fill code and email address if (isset($code) && $code->id) { $this->view->codeId = $code->id; $select1 = $db->select(); $select1->from("invitation_email", "to"); $select1->where("invitation_email.signup_auth_code_id = ?", $code->id); $toEmail = $db->fetchOne($select1); $form->registerEmail->setValue($toEmail); $code->view_date = $currentTime; $code->save(); } //public link $invite_code = $this->_request->getParam('i'); if ($invite_code) { $code2 = $signupAuthCodeModel->fetchRow("public_signup_link = true and auth_code = '" . $invite_code . "'"); $publicLinkValid = false; if (isset($code2)) { $select2 = $db->select(); $select2->from('signup_auth_code', 'count(*)')->where('use_date>date_sub(now(),interval 1 day)')->where('sender =' . $code2->sender)->where('source = "PUBLIC_LINK"')->where('receiver is not null'); $registered = $db->fetchOne($select2); if (intval($registered) < 100) { $publicLinkValid = true; } } } if (isset($code2)) { if ($publicLinkValid) { $codePattern = '1234567890ABCDEFGHIJKLOMNOPQRSTUVWXYZ'; $generatedCode = ''; for ($codeCount = 0; $codeCount < 12; $codeCount++) { $generatedCode = $generatedCode . $codePattern[mt_rand(0, 35)]; } $signupAuthCode = $signupAuthCodeModel->createRow(); $signupAuthCode->auth_code = $generatedCode; $signupAuthCode->create_date = $currentTime; $signupAuthCode->sender = $code2->sender; $signupAuthCode->source = 'PUBLIC_LINK'; $signupAuthCode->auto_invitation = $code2->auto_invitation; $signupAuthCode->save(); $form->auth_code->setValue($generatedCode); } else { $this->_flashMessenger->addMessage($this->view->translate('Sorry_This_register_link_has_been_overused')); $this->_helper->redirector('register', 'register'); } } if ($this->_request->isPost()) { $this->view->registered = 0; $formData = $this->_request->getPost(); if ($form->isValid($formData)) { $db = Zend_Registry::get('db'); if ($form->getValue('registerPassword') == $form->getValue('repeat')) { //2011-04-01 ham register modification if (trim($form->getValue('auth_code')) == '') { //check duplicated email $result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE email = :temp", array('temp' => $form->getValue('registerEmail'))); //check duplicated phone $phone_result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE login_phone = :temp", array('temp' => $form->getValue('loginPhone'))); //var_dump($result);die; if ($result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('registerEmail') . $this->view->translate('Register_email_is_invalid'); } else { if ($phone_result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('loginPhone') . $this->view->translate('Register_phone_is_invalid'); } else { $currentTime = date("Y-m-d H:i:s"); $email = $form->getValue('registerEmail'); //generate enable account link $codePattern = '1234567890ABCDEFGHIJKLOMNOPQRSTUVWXYZ'; $active_code = ''; for ($codeCount = 0; $codeCount < 12; $codeCount++) { $active_code = $active_code . $codePattern[mt_rand(0, 35)]; } $activeLink = $this->view->home . '/public/register/activate/p/' . $active_code; //save link into DB $tomorrow = mktime(date("H"), date("i"), date("s"), date("m"), date("d") + 1, date("Y")); $expire_date = date("Y-m-d H:i:s", $tomorrow); $temporaryLinkModel = new TemporaryLink(); $temporaryLink = array("link" => $activeLink, "email" => $email, "expire_date" => $expire_date); $temporaryLink_id = $temporaryLinkModel->insert($temporaryLink); //send mail $emailSubject = $this->view->translate('ENABLE_ACCOUNT_subject'); $emailBody = $this->view->translate('ENABLE_ACCOUNT_body'); $stringChange = array("?ENABLEACCOUNTLINK?" => $activeLink); $emailBody = strtr($emailBody, $stringChange); $config = Zend_Registry::get('config'); $smtpSender = new Zend_Mail_Transport_Smtp($config->smtp->invitation->mail->server, array('username' => $config->smtp->invitation->mail->username, 'password' => $config->smtp->invitation->mail->password, 'auth' => $config->smtp->invitation->mail->auth, 'ssl' => $config->smtp->invitation->mail->ssl, 'port' => $config->smtp->invitation->mail->port)); // $smtpSender = new Zend_Mail_Transport_Smtp( // 'smtp.163.com',array( // 'username'=>'*****@*****.**', // 'password'=>'19990402', // 'auth'=>'login')); Zend_Mail::setDefaultTransport($smtpSender); $mail = new Zend_Mail('utf-8'); $langNamespace = new Zend_Session_Namespace('Lang'); if ($langNamespace->lang == 'en' || $langNamespace->lang == 'EN') { $mail->setSubject($emailSubject); } else { $mail->setSubject("=?UTF-8?B?" . base64_encode($emailSubject) . "?="); } $mail->setBodyText($emailBody); $mail->setFrom($config->smtp->forgetpassword->mail->username, $this->view->translate('Wildfire')); // $mail->setFrom('*****@*****.**','yun_simon'); $mail->addTo($email); $mail->send(); // save new consumer $consumerModel = new Consumer(); $row = $consumerModel->createRow(); $row->name = $form->getValue('name'); $row->email = $form->getValue('registerEmail'); $row->login_phone = $form->getValue('loginPhone'); $row->password = md5($form->getValue('registerPassword')); $row->state = "ACTIVE"; $row->save(); $this->view->registered = 1; } } //2011-04-01 ham register modification } else { // verify auth code $codeModel = new SignupAuthCode(); $code = $codeModel->fetchRow("auth_code='" . $form->getValue('auth_code') . "' and use_date is null"); if ($code != NULL) { //check pest if ($code->sender != null) { $consumerModel = new Consumer(); $consumer = $consumerModel->fetchRow("id = " . $code->sender); if ($consumer != null && $consumer->pest == '1') { return; } } //check duplicated email $result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE email = :temp", array('temp' => $form->getValue('registerEmail'))); //check duplicated phone $phone_result = $db->fetchOne("SELECT COUNT(*) FROM consumer WHERE login_phone = :temp", array('temp' => $form->getValue('loginPhone'))); if ($result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('registerEmail') . $this->view->translate('Register_email_is_invalid'); } else { if ($phone_result > 0) { $this->view->errMessage = $this->view->translate('Register_err') . $form->getValue('loginPhone') . $this->view->translate('Register_phone_is_invalid'); } else { $currentTime = date("Y-m-d H:i:s"); //2011-04-02 ham.bao add the logic of activating the account $email = $form->getValue('registerEmail'); //generate enable account link $codePattern = '1234567890ABCDEFGHIJKLOMNOPQRSTUVWXYZ'; $active_code = ''; for ($codeCount = 0; $codeCount < 12; $codeCount++) { $active_code = $active_code . $codePattern[mt_rand(0, 35)]; } $activeLink = $this->view->home . '/public/register/activate/p/' . $active_code; //save link into DB $tomorrow = mktime(date("H"), date("i"), date("s"), date("m"), date("d") + 1, date("Y")); $expire_date = date("Y-m-d H:i:s", $tomorrow); $temporaryLinkModel = new TemporaryLink(); $temporaryLink = array("link" => $activeLink, "email" => $email, "expire_date" => $expire_date); $temporaryLink_id = $temporaryLinkModel->insert($temporaryLink); //send mail //2011-04-02 ham.bao add the logic of activating the account // save new consumer $consumerModel = new Consumer(); $row = $consumerModel->createRow(); $row->name = $form->getValue('name'); $row->email = $form->getValue('registerEmail'); $row->login_phone = $form->getValue('loginPhone'); $row->password = md5($form->getValue('registerPassword')); $row->state = "ACTIVE"; $row->save(); //expire the auth_code $code->receiver = $row->id; $code->use_date = $currentTime; $code->save(); //add points for code sender // if (!empty($code->sender)&& $code->sender!=""){ // $pointRecordModel = new RewardPointTransactionRecord(); // $point = $pointRecordModel->createRow(); // $point->consumer_id = $code->sender; // $point->transaction_id = 2; // $point->date = $currentTime; // $point->point_amount = 5; // $point->save(); // } // send auto intivitaion if (!empty($code->auto_invitation) && $code->auto_invitation != 0) { $campaignInvitationModel = new CampaignInvitation(); $ci = $campaignInvitationModel->createRow(); $ci->consumer_id = $row->id; $ci->campaign_id = $code->auto_invitation; $ci->create_date = $currentTime; $ci->state = "NEW"; $ci->save(); } $this->view->registered = 1; // Login Automatically $authAdapter = new Zend_Auth_Adapter_DbTable($db); $authAdapter->setTableName('consumer'); $authAdapter->setIdentityColumn('email'); $authAdapter->setCredentialColumn('password'); $authAdapter->setIdentity($form->getValue('registerEmail')); $authAdapter->setCredential(md5($form->getValue('registerPassword'))); $auth = Zend_Auth::getInstance(); $auth->authenticate($authAdapter); $authNamespace = new Zend_Session_Namespace('Zend_Auth'); $authNamespace->user = $row; $this->_flashMessenger->addMessage('Welcome!'); $this->_helper->redirector('index', 'home'); } } } else { $this->view->errMessage = $this->view->translate('Register_err') . $this->view->translate('Register_authcode_is_invalid'); } } } else { $this->view->errMessage = $this->view->translate('Register_err') . $this->view->translate('Register_repeat_password_is_error'); } } else { $form->populate($formData); } } }
* to look for form view files (this time we are * looking in the folder of the first example so we * can re-use our form template) */ phViewLoader::setInstance(new phFileViewLoader(dirname(__FILE__) . '/../registration')); /* * include and create our RegisterForm instance that * has all the validators embedded in it */ require_once 'RegisterForm.php'; $form = new RegisterForm('register', 'registerForm'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { /* * data has been posted back, bind it to the form */ $form->bindAndValidate($_POST['register']); if ($form->isValid()) { /* * form data is valid, put your code to * register a new user here */ echo "<h1>Registration Complete!</h1>"; } } ?> <form action="/registration2/register.php" method="post"> <?php echo $form; // this will render the form ?> </form>
public function registerAction() { if (null !== $this->_participant) { throw new Exception("What?! You have already become one uf? What do you want to achieve? Trick us?! You cheap trickster!"); } $this->view->title = "Name Yourself!"; $_showError = false; $_success = false; $_form = new RegisterForm(); if ($_POST) { if ($_form->isValid($_POST)) { //Complete the registration here... $p = $this->_table->createRow(); $p->loadFromForm($_form); $p->insert(); $_success = true; } else { $_showError = true; } } if ($_showError) { $this->view->showError = true; } else { if ($_success) { $this->view->showSuccess = true; } } $this->view->form = $_form; }