language . '.php'); // PRINT MESSAGE $errorMsg = $lang[MSG_LOGGED_OUT]; header("Location: " . FILE_INDEX); //required to force site language to override user language at sign in screen break; // ** AUTHENTICATE A USER case "auth": // LOOK FOR USERNAME AND PASSWORD IN THE DATABASE. $usersql = "SELECT username, usertype, password, is_confirmed FROM " . TABLE_USERS . " AS users WHERE username='" . $_POST['username'] . "' AND password=MD5('" . $_POST['password'] . "') LIMIT 1"; $r_getUser = mysql_query($usersql, $db_link) or die(ReportSQLError($usersql)); $numrows = mysql_num_rows($r_getUser); $t_getUser = mysql_fetch_array($r_getUser); // THE USERNAME IS FOUND AND ACCOUNT IS CONFIRMED if (($numrows != 0) && ($t_getUser['is_confirmed'] == 1)) { // REGISTER SESSION VARIABLES $_SESSION['username'] = $t_getUser['username']; $_SESSION['usertype'] = $t_getUser['usertype']; if (!isset($_SESSION['abspath'])) { $_SESSION['abspath'] = dirname($_SERVER['SCRIPT_FILENAME']); } // REDIRECT TO LIST header("Location: " . FILE_LIST); exit(); } // ACCOUNT MUST BE CONFIRMED elseif (($numrows != 0) && ($t_getUser['is_confirmed'] != 1)) { // END SESSION session_destroy(); // PRINT ERROR MESSAGE AND LOGIN SCREEN $errorMsg = $lang[ERR_USER_CONFIRMED_NOT]; } // WRONG USERNAME else { // END SESSION session_destroy(); // PRINT ERROR MESSAGE AND LOGIN SCREEN $errorMsg = $lang[MSG_LOGIN_INCORRECT]; } break; // ** REGISTER A NEW USER case "register": header("Location: " . FILE_REGISTER); exit(); break; // ** LOST PASSWORD case "lostpwd": header("Location: " . FILE_REGISTER . "?mode=lostpwd"); exit(); break; // ** FORCE LOGIN case "login": // This must be set to bypass the redirection to list if requireLogin is off. $forceLoginScreen = 1; break; // ** DEFAULT CASE default: if ($forceLoginScreen != 1) { // ** IF THERE IS A USER LOGGED IN, THEY DON'T NEED TO BE HERE. REDIRECT TO LIST if (isset($_SESSION['username']) && isset($_SESSION['usertype']) && ($_SESSION['abspath'] == dirname($_SERVER['SCRIPT_FILENAME'])) ) { header("Location: " . FILE_LIST); exit(); } // ** IF AUTHENTICATION IS TURNED OFF (via config.php) // Set the user type to "guest" and proceed to list. // If a user is already logged in, the above code will redirect to list before // getting to here. if (($options->requireLogin != 1) && ($enableLogin!=1)) { // REGISTER SESSION VARIABLES $_SESSION['username'] = "@auth_off"; $_SESSION['usertype'] = "guest"; $_SESSION['abspath'] = dirname($_SERVER['SCRIPT_FILENAME']); // REDIRECT TO LIST header("Location: " . FILE_LIST); exit(); } } // END SWITCH } ?>
|