/** * performs user login using the ADA db * * (non-PHPdoc) * @see iLogin::doLogin() */ public function doLogin($name, $pass, $remindMe, $language) { $user = MultiPort::loginUser($name, $pass); if (is_object($user) && $user instanceof ADALoggableUser) { // WARNING! For this login provider, no set of options is supported $this->setSuccessfulOptionsID(0); } return $user; }
while (!feof($fid)) { $infomsg .= fread($fid, 4096); } fclose($fid); } else { $infomsg = translateFN("File info non trovato"); } } /** * Perform login */ if (isset($p_login)) { $username = DataValidator::validate_username($p_username); $password = DataValidator::validate_password($p_password, $p_password); if ($username !== FALSE && $password !== FALSE) { $userObj = MultiPort::loginUser($username, $password); //User has correctly logged in if ($userObj instanceof ADALoggableUser) { $_SESSION['sess_user_language'] = $p_selected_language; $_SESSION['sess_id_user'] = $userObj->getId(); $GLOBALS['sess_id_user'] = $userObj->getId(); $_SESSION['sess_id_user_type'] = $userObj->getType(); $GLOBALS['sess_id_user_type'] = $userObj->getType(); $_SESSION['sess_userObj'] = $userObj; $user_default_tester = $userObj->getDefaultTester(); if ($user_default_tester !== NULL) { $_SESSION['sess_selected_tester'] = $user_default_tester; } header('Location:' . $userObj->getHomePage()); exit; } else {
$loginObj = null; } else { // Utente non loggato perche' informazioni in username e password non valide // es. campi vuoti o contenenti caratteri non consentiti. $login_error_message = translateFN("Username e/o password non valide"); } } else { if (defined('MODULES_LOGIN') && MODULES_LOGIN && isset($selectedLoginProvider) && strlen($selectedLoginProvider) > 0) { include_once MODULES_LOGIN_PATH . '/include/' . $selectedLoginProvider . '.class.inc.php'; if (class_exists($selectedLoginProvider)) { $loginProviderID = isset($selectedLoginProviderID) ? $selectedLoginProviderID : null; $loginObj = new $selectedLoginProvider($selectedLoginProviderID); $userObj = $loginObj->doLogin($username, $password, $p_remindme, $p_selected_language); if (is_object($userObj) && $userObj instanceof Exception) { // try the adalogin before giving up the login process $lastTry = MultiPort::loginUser($username, $password); if (is_object($lastTry) && $lastTry instanceof ADALoggableUser) { $loginObj = null; $userObj = $lastTry; } } } } } if (is_object($userObj) && $userObj instanceof ADALoggableUser) { if (isset($_SESSION['subscription_page'])) { $redirectURL = $_SESSION['subscription_page']; unset($_SESSION['subscription_page']); } else { $redirectURL = $navigationHistoryObj->lastModule(); }