private function logout() { $this->loginModel->logoutUser(); $this->loginView->forgetUser(); $this->loginView->setLogoutSucceeded(); $this->loginView->reloadPage(); }
public function rememberUser() { $username = $this->getRequestUserName(); $password = $this->loginModel->getTempPassword(); $this->cookieHandler->setCookie(self::$cookieName, $username, 30); $this->cookieHandler->setCookie(self::$cookiePassword, $password, 30); }
/** * Create HTTP response * * Should be called after a login attempt has been determined * @sideeffect Sets cookies! * @return String HTML */ public function response($inputName) { if ($this->model->isLoggedIn($this->getUserClient())) { return $this->doLogoutForm(); } else { return $this->doLoginForm($inputName); } }
private function setNewTemporaryPassword() { //set New Cookie $tempCred = $this->model->getTempCredentials(); if ($tempCred) { setcookie(self::$cookieName, $this->getUserName(), $tempCred->getExpire()); setcookie(self::$CookiePassword, $tempCred->getPassword(), $tempCred->getExpire()); } }
/** * Called when cookies containing login credentials exists. * Calls \model\LoginModel for verification of the data * stored in the cookies. * * Sets \view\LoginView message. */ private function cookieLogin() { $cookieName = $this->logView->getCookieName(); $cookiePassword = $this->logView->getCookiePassword(); $this->logModel->verifyPersistentLogin($cookieName, $cookiePassword); if ($this->logModel->isLoggedIn()) { $this->logView->setMsgWelcomeWithCookies(); } }
/** * Function for handling states associated with the login */ public function doLogin() { //var_dump(self::$LoginView->isCorrectSession()); if (self::$LoginView->theUserWantToLogout()) { self::$LoginView->setLogoutView(); self::$LoginModel->logout(); $tempUsername = self::$LoginView->removeKeepLogin(); self::$LoginModel->removeUser($tempUsername); } else { if (self::$LoginView->theUserWantToLogin()) { self::$LoginView->setLoginView(); $successfulLogin = self::$LoginModel->login(self::$LoginView->getUser()); if ($successfulLogin && self::$LoginView->isKeepLoggedInChecked()) { $randomizedPassword = self::$LoginModel->saveUser(self::$LoginView->getUser()); self::$LoginView->setKeepLogin($randomizedPassword); } } else { if (self::$LoginView->checkIfPersistentLoggedIn()) { self::$LoginModel->loginSavedUser(self::$LoginView->getPersistentLoggedInUser()); self::$LoginView->setLoginWithCookiesView(); } else { if (!self::$LoginView->validCookies()) { // self::$LoginModel->logout(); self::$LoginView->removeKeepLogin(); self::$LoginView->setFailedLoginWithCookiesView(); } } } } if (self::$PrgView->isPost()) { self::$PrgView->reloadPage(); } }
/** * @return string HTML */ public function doControl() { // if the user has clicked the submit button if ($this->loginFormView->isSubmitted()) { try { $username = $this->loginFormView->getUsername(); $password = $this->loginFormView->getPassword(); if ($this->loginModel->validate($username, $password)) { if ($this->loginFormView->clickedRemember()) { $this->loginModel->setCookies(); $message = $this->loginFormView->remberMeMsg(); } else { $message = $this->loginFormView->loggedInMsg(); } if ($this->loginModel->isRefreshed()) { $message = $this->loginFormView->refreshPageMsg(); } $this->adminView->setMessage($message); return $this->adminView->getAdminHTML(); } } catch (\Exception $e) { $this->loginFormView->setMessage($e->getMessage()); return $this->loginFormView->getForm(); } } //if the user logged out if ($this->adminView->logOutClicked() && $this->loginModel->isLoggedIn()) { $this->loginModel->logOut(); $message = $this->loginFormView->loggedOutMsg(); $this->loginFormView->setMessage($message); $this->loginModel->unsetCookies(); return $this->loginFormView->getForm(); } //if the user has saved cookies if ($this->loginModel->hasSavedCookies()) { try { $username = $this->loginModel->getCookieUsername(); $password = $this->loginModel->getCookiePassword(); $cookiTime = $this->loginModel->getCookieTime(); if ($this->loginModel->validateCookies($username, $password, $cookiTime)) { $message = $this->loginFormView->cookieMsg(); $this->adminView->setMessage($message); return $this->adminView->getAdminHTML(); } } catch (\Exception $e) { $this->loginFormView->setMessage($e->getMessage()); $this->loginModel->unsetCookies(); return $this->loginFormView->getForm(); } } //if user is logged in if ($this->loginModel->isLoggedIn()) { return $this->adminView->getAdminHTML(); } return $this->loginFormView->getForm(); }
/** * Create HTTP response * * Should be called after a login attempt has been determined * * @return void BUT writes to standard output and cookies! */ public function response() { $message = ''; if (self::$LoginModel->userLoggedIn()) { $message = $this->getMessage(); $response = $this->generateLogoutButtonHTML($message); } else { $message = $this->getMessage(); $response = $this->generateLoginFormHTML($message); } // $response .= $this->generateLogoutButtonHTML($message); return $response; }