Пример #1
0
 public function forgotPasswordAction()
 {
     $this->view->pageHeading = "Forgot Password";
     $request = $this->getRequest();
     $this->view->form = $form = new Application_Form_Login();
     $elements = $form->getElements();
     $form->clearDecorators();
     foreach ($elements as $element) {
         $element->removeDecorator('label');
         $element->removeDecorator('Errors');
     }
     $form->removeElement('password');
     if ($request->isPost()) {
         if ($form->isValid($request->getPost())) {
             $params = $request->getParams();
             $user = new Application_Model_User();
             $user = $user->fetchRow("email='{$params['email']}'");
             if ($user) {
                 $auth = new Base_Auth_Auth();
                 $auth->recoverPassword($user);
                 $this->_flashMessenger->addMessage(array('success' => 'Your password has been reset. Please check your email.'));
                 $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/index/login'));
             } else {
                 $this->_flashMessenger->addMessage(array('error' => "Invalid email address!"));
                 $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/index/forgot-password'));
             }
         } else {
             $this->view->email_msg = array_pop($form->getMessages('email'));
         }
     }
 }
Пример #2
0
 public function logoutAction()
 {
     $Auth = new Base_Auth_Auth();
     $Auth->doLogout();
     //$Auth->forgotMe('rememberMe');
     $this->_flashMessenger->addMessage(array('success' => 'You have successfully logged out.'));
     $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/mps/auth/login'));
 }
Пример #3
0
 public function loginAction()
 {
     $request = $this->getRequest();
     $form = new Admin_Form_Login();
     $this->view->form = $form;
     if ($request->isPost()) {
         if ($form->isValid($request->getPost())) {
             $Auth = new Base_Auth_Auth();
             $params = $request->getParams();
             $Auth->doLogout();
             $loginStatusEmail = true;
             $loginStatusUsername = true;
             $loginStatusEmail = $Auth->doLogin($params, 'email');
             if ($loginStatusEmail == false) {
                 $loginStatusUsername = $Auth->doLogin($params, 'username');
             }
             if ($loginStatusEmail == false && $loginStatusUsername == false) {
                 // Invalid credentials
                 $form->setDescription('Invalid credentials provided');
             } else {
                 if ($params['rememberMe'] == 1) {
                     $Auth->remeberMe(true, $params);
                 } else {
                     $Auth->forgotMe('rememberMe');
                     //delete existing cookies as per new requirement
                 }
                 // Valid credentials
                 // We're authenticated! Redirect to the home page
                 $this->_helper->redirector('dashboard', 'index', 'admin');
             }
         }
     }
 }
Пример #4
0
 /**
 * @Created By : Mahipal Singh Adhikari
 * @Created On : 17-Nov-2010
 * @Description: Used to display login page and when guest user try to access private pages
 */
 public function userLoginAction()
 {
     // if user is already logged in then redirect to were-I-am page
     if (Zend_Auth::getInstance()->hasIdentity()) {
         $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/gapper/where-i-am'));
     }
     if ($this->_getParam("msg") == "le") {
         $this->view->message = "Incorrect details entered: please try again.";
     } else {
         if ($this->_getParam('msg') == "hle") {
             $this->view->message = "Incorrect details entered: please try again.";
         }
     }
     $request = $this->getRequest();
     if ($request->isPost()) {
         $params = $request->getParams();
         $Auth = new Base_Auth_Auth();
         $Auth->doLogout();
         $loginStatusEmail = true;
         $loginStatusUsername = true;
         $loginStatusEmail = $Auth->doLogin($params, 'email');
         if ($loginStatusEmail == false) {
             $loginStatusUsername = $Auth->doLogin($params, 'username');
         }
         //$loginStatusUsername=$Auth->doLogin($params, 'username');
         if ($loginStatusEmail == false && $loginStatusUsername == false) {
             $this->_helper->redirector('user-login', 'index', "default", array("msg" => "le"));
         } else {
             if ($params['rememberMe'] == 1) {
                 $Auth->remeberMe(true, $params);
             } else {
                 $Auth->forgotMe('rememberMe');
                 //delete existing cookies as per new requirement
             }
             //if reffered from secured pages
             if ($_SESSION['session_redirect_url']) {
                 $redirect_url = $_SESSION['session_redirect_url'];
                 unset($_SESSION['session_redirect_url']);
                 header("location:" . $redirect_url);
                 exit;
             } else {
                 $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/gapper/where-i-am'));
             }
         }
         //else
     }
     //end of if
 }
Пример #5
0
 public function doFacebookLogin()
 {
     $view = new Zend_view();
     $view->addHelperPath('Base/View/Helper/', 'Base_View_Helper');
     $facebook = $view->facebook();
     $session = $facebook->getSession();
     if ($session) {
         try {
             $Auth = new Base_Auth_Auth();
             $uid = $facebook->getUser();
             $user = new Application_Model_User();
             $where = "facebook_id='{$uid}'";
             $user = $user->fetchRow($where);
             if (false === $user) {
                 //create new user
                 $me = $facebook->api('/me');
                 $password = md5($Auth->passwordGenerator());
                 $user = new Application_Model_User();
                 if ($me['email'] != "") {
                     $where = "email='{$me['email']}'";
                     $user = $user->fetchRow($where);
                     if (false === $user) {
                         //insertex
                         $user = new Application_Model_User();
                         $user->setEmail($me['email']);
                         $user->setUsername($me['id']);
                         $user->setPassword($password);
                         $user->setfirstName($me['first_name']);
                         $user->setLastName($me['last_name']);
                         $user->setSex($me['gender']);
                         $user->setGapperOrFriend('gapper');
                         $user->setFacebookId($me['id']);
                         $user->setStatus('active');
                         $user->setDob('0000-00-00');
                         $user->setUserLevelId(1);
                     } else {
                         //update
                         $user->setFacebookId($me['id']);
                     }
                 } else {
                     $user = new Application_Model_User();
                     $user->setEmail($me['email']);
                     $user->setUsername($me['id']);
                     $user->setPassword($password);
                     $user->setfirstName($me['first_name']);
                     $user->setLastName($me['last_name']);
                     $user->setSex($me['gender']);
                     $user->setGapperOrFriend('gapper');
                     $user->setFacebookId($me['id']);
                     $user->setStatus('active');
                     $user->setDob('0000-00-00');
                     $user->setUserLevelId(1);
                 }
                 $user_id = $user->save();
                 if ($user_id > 0) {
                     $user->setDefaultPermissions($user_id);
                     if ($params['email'] != "") {
                         //send registration mail
                     }
                 }
             }
             //--do login --
             $params['email'] = $user->getEmail();
             //$params['username']=$user->getUsername();
             $params['password'] = $user->getPassword();
             $params['md5'] = "false";
             $Auth->doLogout();
             $loginStatus = true;
             if ($params['email'] != "") {
                 $loginStatus = $Auth->doLogin($params, 'email');
             } else {
                 $params['email'] = $user->getUsername();
                 $loginStatus = $Auth->doLogin($params, 'username');
             }
             if ($user->getEmail() == "" || is_null($user->getEmail())) {
                 //echo "<a href='/gapper/update-your-email' >Click here</a>";
                 //$this->_helper->redirector('update-your-email','gapper');
                 $result['email'] = "no";
                 return $result;
             }
             if ($loginStatus) {
                 $result['email'] = "ok";
                 return $result;
                 //echo "<a href='/gapper/where-i-am' >Click here</a>";
                 //$this->_helper->redirector('where-i-am','gapper');
             } else {
                 if ($user->getStatus() == "inactive") {
                     exit("Please activate your account. <br><a href='#' onclick='window.close();'>Close</a>");
                 } else {
                     if ($user->getStatus() == "deleted") {
                         exit("Your account status is deleted. Please contact administrator.");
                     } else {
                         exit("error while login");
                     }
                 }
             }
         } catch (FacebookApiException $e) {
             error_log($e);
         }
     }
 }
Пример #6
0
 public function resetPasswordAction()
 {
     $id = $this->_getParam('id');
     $User = new Application_Model_User();
     $res = $User->find($id);
     $Auth = new Base_Auth_Auth();
     $Auth->recoverPassword($res);
     return $this->_helper->redirector('index', 'user', "admin", array('msg' => base64_encode("User [Id : {$res->getId()}] Password has been changed!")));
 }