diff options
| -rw-r--r-- | login.php | 11 | ||||
| -rw-r--r-- | validate.php | 23 |
2 files changed, 13 insertions, 21 deletions
@@ -1,6 +1,6 @@ <?php /** - * $Header: /cvsroot/bitweaver/_bit_users/login.php,v 1.5 2006/02/06 00:12:08 squareing Exp $ + * $Header: /cvsroot/bitweaver/_bit_users/login.php,v 1.6 2006/02/17 13:57:55 squareing Exp $ * * Copyright (c) 2004 bitweaver.org * Copyright (c) 2003 tikwiki.org @@ -8,7 +8,7 @@ * All Rights Reserved. See copyright.txt for details and a complete list of authors. * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details * - * $Id: login.php,v 1.5 2006/02/06 00:12:08 squareing Exp $ + * $Id: login.php,v 1.6 2006/02/17 13:57:55 squareing Exp $ * @package users * @subpackage functions */ @@ -18,6 +18,13 @@ */ include_once ("../bit_setup_inc.php"); +if( !empty( $_SERVER['HTTP_REFERER'] ) && !strpos( $_SERVER['HTTP_REFERER'], 'login.php' ) && !strpos( $_SERVER['HTTP_REFERER'], 'register.php' ) ) { + $from = parse_url( $_SERVER['HTTP_REFERER'] ); + if( $from['host'] == $_SERVER['SERVER_NAME'] ) { + $_SESSION['loginfrom'] = $from['path'].'?'.$from['query']; + } +} + if( $gBitUser->isRegistered() ) { header( 'Location: '.USERS_PKG_URL.'my.php' ); die; diff --git a/validate.php b/validate.php index 2ae2f6d..7543534 100644 --- a/validate.php +++ b/validate.php @@ -1,6 +1,6 @@ <?php /** - * $Header: /cvsroot/bitweaver/_bit_users/validate.php,v 1.9 2006/02/06 16:20:09 squareing Exp $ + * $Header: /cvsroot/bitweaver/_bit_users/validate.php,v 1.10 2006/02/17 13:57:55 squareing Exp $ * * Copyright (c) 2004 bitweaver.org * Copyright (c) 2003 tikwiki.org @@ -8,7 +8,7 @@ * All Rights Reserved. See copyright.txt for details and a complete list of authors. * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details * - * $Id: validate.php,v 1.9 2006/02/06 16:20:09 squareing Exp $ + * $Id: validate.php,v 1.10 2006/02/17 13:57:55 squareing Exp $ * @package users * @subpackage functions */ @@ -23,26 +23,10 @@ global $gBitSystem; //Remember where user is logging in from and send them back later; using session variable for those of us who use WebISO services if( empty( $_SESSION['loginfrom'] ) ) { if( isset( $_SERVER['HTTP_REFERER'] ) && !strpos( $_SERVER['HTTP_REFERER'], 'login.php' ) && !strpos( $_SERVER['HTTP_REFERER'], 'register.php' ) ) { - $from = (parse_url($_SERVER['HTTP_REFERER'])); + $from = parse_url( $_SERVER['HTTP_REFERER'] ); $_SESSION['loginfrom'] = $from['path']; } } -/* This appears obsoleted by code in users/admin/index.php (assume_user) - wolff_borg -if ($gBitUser->isAdmin()) { - if (isset($_REQUEST["su"])) { - if ($gBitUser->userExists( array( 'login' => $_REQUEST['username'] ) ) ) { - $_SESSION["$user_cookie_site"] = $_REQUEST["username"]; - $gBitSmarty->assign_by_ref('user', $_REQUEST["username"]); - } - $url = $_SESSION['loginfrom']; - //unset session variable for the next su - unset($_SESSION['loginfrom']); - echo("location: $url"); - //header("location: $url"); - die; - } -} -*/ $https_mode = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on'; $https_login_required = $gBitSystem->getPreference('https_login_required', 'n'); @@ -74,6 +58,7 @@ if (!preg_match('/^\w+:\/{2}/', $url)) { if( (strpos( $url, 'login.php?' ) || strpos( $url, 'remind_password.php' )) && strpos( $url, 'login.php?error=') == -1) { $url = $gBitSystem->getDefaultPage(); } + header('Location: ' . $url); exit; ?> |
