X-Git-Url: http://git.vanrenterghem.biz/www.vanrenterghem.biz.git/blobdiff_plain/4b1ce0d83844cfd7c55e75a60ccb239882cd62e3..83ab5456767602f2a9860a7db7247f002ec96945:/phpBB2/login.php diff --git a/phpBB2/login.php b/phpBB2/login.php deleted file mode 100644 index 9a97a51..0000000 --- a/phpBB2/login.php +++ /dev/null @@ -1,265 +0,0 @@ -sql_query($sql)) ) - { - message_die(GENERAL_ERROR, 'Error in obtaining userdata', '', __LINE__, __FILE__, $sql); - } - - if( $row = $db->sql_fetchrow($result) ) - { - if( $row['user_level'] != ADMIN && $board_config['board_disable'] ) - { - redirect(append_sid("index.$phpEx", true)); - } - else - { - // If the last login is more than x minutes ago, then reset the login tries/time - if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $row['user_last_login_try'] < (time() - ($board_config['login_reset_time'] * 60))) - { - $db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_tries = 0, user_last_login_try = 0 WHERE user_id = ' . $row['user_id']); - $row['user_last_login_try'] = $row['user_login_tries'] = 0; - } - - // Check to see if user is allowed to login again... if his tries are exceeded - if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $board_config['max_login_attempts'] && - $row['user_last_login_try'] >= (time() - ($board_config['login_reset_time'] * 60)) && $row['user_login_tries'] >= $board_config['max_login_attempts'] && $userdata['user_level'] != ADMIN) - { - message_die(GENERAL_MESSAGE, sprintf($lang['Login_attempts_exceeded'], $board_config['max_login_attempts'], $board_config['login_reset_time'])); - } - - if( md5($password) == $row['user_password'] && $row['user_active'] ) - { - $autologin = ( isset($HTTP_POST_VARS['autologin']) ) ? TRUE : 0; - - $admin = (isset($HTTP_POST_VARS['admin'])) ? 1 : 0; - $session_id = session_begin($row['user_id'], $user_ip, PAGE_INDEX, FALSE, $autologin, $admin); - - // Reset login tries - $db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_tries = 0, user_last_login_try = 0 WHERE user_id = ' . $row['user_id']); - - if( $session_id ) - { - $url = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx"; - redirect(append_sid($url, true)); - } - else - { - message_die(CRITICAL_ERROR, "Couldn't start session : login", "", __LINE__, __FILE__); - } - } - // Only store a failed login attempt for an active user - inactive users can't login even with a correct password - elseif( $row['user_active'] ) - { - // Save login tries and last login - if ($row['user_id'] != ANONYMOUS) - { - $sql = 'UPDATE ' . USERS_TABLE . ' - SET user_login_tries = user_login_tries + 1, user_last_login_try = ' . time() . ' - WHERE user_id = ' . $row['user_id']; - $db->sql_query($sql); - } - } - - $redirect = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : ''; - $redirect = str_replace('?', '&', $redirect); - - if (strstr(urldecode($redirect), "\n") || strstr(urldecode($redirect), "\r") || strstr(urldecode($redirect), ';url')) - { - message_die(GENERAL_ERROR, 'Tried to redirect to potentially insecure url.'); - } - - $template->assign_vars(array( - 'META' => "") - ); - - $message = $lang['Error_login'] . '

' . sprintf($lang['Click_return_login'], "", '') . '

' . sprintf($lang['Click_return_index'], '', ''); - - message_die(GENERAL_MESSAGE, $message); - } - } - else - { - $redirect = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : ""; - $redirect = str_replace("?", "&", $redirect); - - if (strstr(urldecode($redirect), "\n") || strstr(urldecode($redirect), "\r") || strstr(urldecode($redirect), ';url')) - { - message_die(GENERAL_ERROR, 'Tried to redirect to potentially insecure url.'); - } - - $template->assign_vars(array( - 'META' => "") - ); - - $message = $lang['Error_login'] . '

' . sprintf($lang['Click_return_login'], "", '') . '

' . sprintf($lang['Click_return_index'], '', ''); - - message_die(GENERAL_MESSAGE, $message); - } - } - else if( ( isset($HTTP_GET_VARS['logout']) || isset($HTTP_POST_VARS['logout']) ) && $userdata['session_logged_in'] ) - { - // session id check - if ($sid == '' || $sid != $userdata['session_id']) - { - message_die(GENERAL_ERROR, 'Invalid_session'); - } - - if( $userdata['session_logged_in'] ) - { - session_end($userdata['session_id'], $userdata['user_id']); - } - - if (!empty($HTTP_POST_VARS['redirect']) || !empty($HTTP_GET_VARS['redirect'])) - { - $url = (!empty($HTTP_POST_VARS['redirect'])) ? htmlspecialchars($HTTP_POST_VARS['redirect']) : htmlspecialchars($HTTP_GET_VARS['redirect']); - $url = str_replace('&', '&', $url); - redirect(append_sid($url, true)); - } - else - { - redirect(append_sid("index.$phpEx", true)); - } - } - else - { - $url = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx"; - redirect(append_sid($url, true)); - } -} -else -{ - // - // Do a full login page dohickey if - // user not already logged in - // - if( !$userdata['session_logged_in'] || (isset($HTTP_GET_VARS['admin']) && $userdata['session_logged_in'] && $userdata['user_level'] == ADMIN)) - { - $page_title = $lang['Login']; - include($phpbb_root_path . 'includes/page_header.'.$phpEx); - - $template->set_filenames(array( - 'body' => 'login_body.tpl') - ); - - $forward_page = ''; - - if( isset($HTTP_POST_VARS['redirect']) || isset($HTTP_GET_VARS['redirect']) ) - { - $forward_to = $HTTP_SERVER_VARS['QUERY_STRING']; - - if( preg_match("/^redirect=([a-z0-9\.#\/\?&=\+\-_]+)/si", $forward_to, $forward_matches) ) - { - $forward_to = ( !empty($forward_matches[3]) ) ? $forward_matches[3] : $forward_matches[1]; - $forward_match = explode('&', $forward_to); - - if(count($forward_match) > 1) - { - for($i = 1; $i < count($forward_match); $i++) - { - if( !ereg("sid=", $forward_match[$i]) ) - { - if( $forward_page != '' ) - { - $forward_page .= '&'; - } - $forward_page .= $forward_match[$i]; - } - } - $forward_page = $forward_match[0] . '?' . $forward_page; - } - else - { - $forward_page = $forward_match[0]; - } - } - } - - $username = ( $userdata['user_id'] != ANONYMOUS ) ? $userdata['username'] : ''; - - $s_hidden_fields = ''; - $s_hidden_fields .= (isset($HTTP_GET_VARS['admin'])) ? '' : ''; - - make_jumpbox('viewforum.'.$phpEx); - $template->assign_vars(array( - 'USERNAME' => $username, - - 'L_ENTER_PASSWORD' => (isset($HTTP_GET_VARS['admin'])) ? $lang['Admin_reauthenticate'] : $lang['Enter_password'], - 'L_SEND_PASSWORD' => $lang['Forgotten_password'], - - 'U_SEND_PASSWORD' => append_sid("profile.$phpEx?mode=sendpassword"), - - 'S_HIDDEN_FIELDS' => $s_hidden_fields) - ); - - $template->pparse('body'); - - include($phpbb_root_path . 'includes/page_tail.'.$phpEx); - } - else - { - redirect(append_sid("index.$phpEx", true)); - } - -} - -?> \ No newline at end of file