mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-07-01 07:02:48 +02:00
"fixed problem of under some conditions not loaded adodb classes for php4-restore"
This commit is contained in:
@ -1,32 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* eGW's Session Management
|
||||
*
|
||||
* This allows eGroupWare to use php or database sessions
|
||||
*
|
||||
* @link www.egroupware.org
|
||||
* @author NetUSE AG Boris Erdmann, Kristian Koehntopp
|
||||
* @author Dan Kuykendall <seek3r@phpgroupware.org>
|
||||
* @author Joseph Engo <jengo@phpgroupware.org>
|
||||
* @author Ralf Becker <ralfbecker@outdoor-training.de>
|
||||
* @copyright © 1998-2000 NetUSE AG Boris Erdmann, Kristian Koehntopp <br> © 2003 FreeSoftware Foundation
|
||||
* @license LGPL
|
||||
* @version $Id$
|
||||
*/
|
||||
* eGW's Session Management
|
||||
*
|
||||
* This allows eGroupWare to use php or database sessions
|
||||
*
|
||||
* @link www.egroupware.org
|
||||
* @author NetUSE AG Boris Erdmann, Kristian Koehntopp
|
||||
* @author Dan Kuykendall <seek3r@phpgroupware.org>
|
||||
* @author Joseph Engo <jengo@phpgroupware.org>
|
||||
* @author Ralf Becker <ralfbecker@outdoor-training.de>
|
||||
* @copyright © 1998-2000 NetUSE AG Boris Erdmann, Kristian Koehntopp <br> © 2003 FreeSoftware Foundation
|
||||
* @license LGPL
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
define('EGW_SESSION_VAR','egw_session'); // where to store our session-data $_SESSION[EGW_SESSION_VAR]
|
||||
define('EGW_SESSION_VAR','egw_session'); // where to store our session-data $_SESSION[EGW_SESSION_VAR]
|
||||
|
||||
/**
|
||||
* Session Management via php sessions
|
||||
*
|
||||
* @package api
|
||||
* @subpackage sessions
|
||||
*/
|
||||
class sessions extends sessions_
|
||||
{
|
||||
/**
|
||||
* Session Management via php sessions
|
||||
*
|
||||
* @package api
|
||||
* @subpackage sessions
|
||||
*/
|
||||
class sessions extends sessions_
|
||||
{
|
||||
var $save_session_vars_start;
|
||||
|
||||
function sessions($domain_names=null)
|
||||
{
|
||||
$this->save_session_vars_start = $_SESSION; // store already set session vars
|
||||
|
||||
$this->sessions_($domain_names);
|
||||
//controls the time out for php4 sessions - skwashd 18-May-2003
|
||||
ini_set('session.gc_maxlifetime', $GLOBALS['egw_info']['server']['sessions_timeout']);
|
||||
@ -38,7 +41,8 @@
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function commit_session() {
|
||||
function commit_session()
|
||||
{
|
||||
session_write_close();
|
||||
return true;
|
||||
}
|
||||
@ -81,7 +85,16 @@
|
||||
|
||||
function register_session($login,$user_ip,$now,$session_flags)
|
||||
{
|
||||
// session_start() is now called in new_session_id() !!!
|
||||
// restore session vars set before session was started
|
||||
if ($this->save_session_vars_start && is_array($this->save_session_vars_start))
|
||||
{
|
||||
foreach($this->save_session_vars_start as $name => &$value)
|
||||
{
|
||||
//error_log(__METHOD__."() added $name=".array2string($value));
|
||||
$_SESSION[$name] =& $value;
|
||||
}
|
||||
unset($this->save_session_vars_start);
|
||||
}
|
||||
$_SESSION[EGW_SESSION_VAR]['session_id'] = $this->sessionid;
|
||||
$_SESSION[EGW_SESSION_VAR]['session_lid'] = $login;
|
||||
$_SESSION[EGW_SESSION_VAR]['session_ip'] = $user_ip;
|
||||
@ -323,4 +336,4 @@
|
||||
{
|
||||
return count($this->list_sessions(0,'','',True));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user