[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] phpgwapi/inc class.sessions.inc.php, 1.104.4.15, 1.10
From: |
Dave Hall <address@hidden> |
Subject: |
[Phpgroupware-cvs] phpgwapi/inc class.sessions.inc.php, 1.104.4.15, 1.104.4.16 class.sessions_php4.inc.php, 1.6.2.10.2.6, 1.6.2.10.2.7 |
Date: |
Sun, 28 Sep 2003 04:15:52 +0000 |
Update of /cvsroot/phpgroupware/phpgwapi/inc
In directory subversions:/tmp/cvs-serv15055
Modified Files:
Tag: Version-0_9_16-branch
class.sessions.inc.php class.sessions_php4.inc.php
Log Message:
fixes, formatting, respecting config
Index: class.sessions_php4.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/phpgwapi/inc/class.sessions_php4.inc.php,v
retrieving revision 1.6.2.10.2.6
retrieving revision 1.6.2.10.2.7
diff -C2 -d -r1.6.2.10.2.6 -r1.6.2.10.2.7
*** class.sessions_php4.inc.php 17 Jul 2003 22:23:51 -0000 1.6.2.10.2.6
--- class.sessions_php4.inc.php 28 Sep 2003 04:15:50 -0000 1.6.2.10.2.7
***************
*** 29,34 ****
function sessions()
{
$this->sessions_();
! //controls the time out for php4 sessions - skwashd
18-May-2003
ini_set('session.gc_maxlifetime',
$GLOBALS['phpgw_info']['server']['sessions_timeout']);
define('PHPGW_PHPSESSID', ini_get('session.name'));
--- 29,39 ----
function sessions()
{
+ //Call abstract class constructor
$this->sessions_();
!
! //respect the config option for cookies
!
ini_set('session.use_cookies',$GLOBALS['phpgw_info']['server']['usecookies']);
!
! //controls the time out for php4 sessions - skwashd
18-May-2003
ini_set('session.gc_maxlifetime',
$GLOBALS['phpgw_info']['server']['sessions_timeout']);
define('PHPGW_PHPSESSID', ini_get('session.name'));
Index: class.sessions.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/phpgwapi/inc/class.sessions.inc.php,v
retrieving revision 1.104.4.15
retrieving revision 1.104.4.16
diff -C2 -d -r1.104.4.15 -r1.104.4.16
*** class.sessions.inc.php 22 Jul 2003 08:48:15 -0000 1.104.4.15
--- class.sessions.inc.php 28 Sep 2003 04:15:50 -0000 1.104.4.16
***************
*** 5,10 ****
* and Joseph Engo <address@hidden> *
* and Ralf Becker <address@hidden> *
! * Copyright (C) 2000, 2001 Dan Kuykendall *
! * Parts Copyright (C) 2003 Free Software Foundation Inc
*
* -------------------------------------------------------------------------*
* This library is part of the phpGroupWare API *
--- 5,9 ----
* and Joseph Engo <address@hidden> *
* and Ralf Becker <address@hidden> *
! * Copyright (C) 2000 - 2003 Free Software Foundation Inc *
* -------------------------------------------------------------------------*
* This library is part of the phpGroupWare API *
***************
*** 50,137 ****
{
/**
! * @var string current user login
! */
! var $login;
!
! /**
! * @var sting current user password
! */
var $passwd;
!
! /**
! * @var int current user db/ldap account id
! */
var $account_id;
!
! /**
! * @var string current user account login id - ie address@hidden
! */
var $account_lid;
!
! /**
! * @var string previous page call id - repost prevention
! */
var $history_id;
!
! /**
! * @var string domain for current user
! */
var $account_domain;
!
! /**
! * @var session type flag, A - anonymous session, N - None, normal
session
! */
var $session_flags;
!
! /**
! * @var string current user session id
! */
var $sessionid;
!
! /**
! * @var string not sure what this does, but it is important :)
! */
var $kp3;
!
! /**
! * @var string encryption key?
! */
var $key;
!
! /**
! * @var string iv == ivegotnoidea ;) (skwashd)
! */
var $iv;
!
! /**
! * @var session data
! */
var $data;
!
! /**
! * @var object holder for the database object
! */
var $db;
!
! /**
! * @var array publicly available methods
! */
var $public_functions = array(
! 'list_methods' => True,
! 'update_dla' => True,
! 'list' => True,
! 'total' => True
! );
/**
! * @var string domain for cookies
! */
! var $cookie_domain;
- /**
- * @var name of XML-RPC/SOAP method called
- */
- var $xmlrpc_method_called;
-
/**
* Constructor just loads up some defaults from cookies
--- 49,136 ----
{
/**
! * @var string current user login
! */
! var $login;
!
! /**
! * @var sting current user password
! */
var $passwd;
!
! /**
! * @var int current user db/ldap account id
! */
var $account_id;
!
! /**
! * @var string current user account login id - ie address@hidden
! */
var $account_lid;
!
! /**
! * @var string previous page call id - repost prevention
! */
var $history_id;
!
! /**
! * @var string domain for current user
! */
var $account_domain;
!
! /**
! * @var session type flag, A - anonymous session, N - None,
normal session
! */
var $session_flags;
!
! /**
! * @var string current user session id
! */
var $sessionid;
!
! /**
! * @var string not sure what this does, but it is important :)
! */
var $kp3;
!
! /**
! * @var string encryption key?
! */
var $key;
!
! /**
! * @var string iv == ivegotnoidea ;) (skwashd)
! */
var $iv;
!
! /**
! * @var session data
! */
var $data;
!
! /**
! * @var object holder for the database object
! */
var $db;
!
! /**
! * @var array publicly available methods
! */
var $public_functions = array(
! 'list_methods' => True,
! 'update_dla' => True,
! 'list' => True,
! 'total' => True
! );
/**
! * @var string domain for cookies
! */
! var $cookie_domain;
!
! /**
! * @var name of XML-RPC/SOAP method called
! */
! var $xmlrpc_method_called;
/**
* Constructor just loads up some defaults from cookies
***************
*** 139,151 ****
function sessions_()
{
-
$this->db = $GLOBALS['phpgw']->db;
$this->sessionid =
get_var('sessionid',array('GET','COOKIE'));
$this->kp3 = get_var('kp3',array('GET','COOKIE'));
!
/* Create the crypto object */
$GLOBALS['phpgw']->crypto =
CreateObject('phpgwapi.crypto');
$this->phpgw_set_cookiedomain();
!
// verfiy and if necessary create and save our config
settings
//
--- 138,149 ----
function sessions_()
{
$this->db = $GLOBALS['phpgw']->db;
$this->sessionid =
get_var('sessionid',array('GET','COOKIE'));
$this->kp3 = get_var('kp3',array('GET','COOKIE'));
!
/* Create the crypto object */
$GLOBALS['phpgw']->crypto =
CreateObject('phpgwapi.crypto');
$this->phpgw_set_cookiedomain();
!
// verfiy and if necessary create and save our config
settings
//
***************
*** 153,177 ****
if
(!isset($GLOBALS['phpgw_info']['server']['max_access_log_age']))
{
!
$GLOBALS['phpgw_info']['server']['max_access_log_age'] = 90; // default 90
days
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['block_time']))
{
! $GLOBALS['phpgw_info']['server']['block_time']
= 30; // default 30min
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['num_unsuccessful_id']))
{
!
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id'] = 3; // default 3
trys per id
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['num_unsuccessful_ip']))
{
!
$GLOBALS['phpgw_info']['server']['num_unsuccessful_ip'] =
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id']; // default same as
for id
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['install_id']))
{
! $GLOBALS['phpgw_info']['server']['install_id']
= md5($GLOBALS['phpgw']->common->randomstring(15));
$save_rep = True;
}
--- 151,178 ----
if
(!isset($GLOBALS['phpgw_info']['server']['max_access_log_age']))
{
!
$GLOBALS['phpgw_info']['server']['max_access_log_age'] = 90;// default 90 days
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['block_time']))
{
! $GLOBALS['phpgw_info']['server']['block_time']
= 30;// default 30min
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['num_unsuccessful_id']))
{
!
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id'] = 3;// default 3 trys
per id
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['num_unsuccessful_ip']))
{
! // default same as for id
!
$GLOBALS['phpgw_info']['server']['num_unsuccessful_ip']
! =
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id'];
$save_rep = True;
}
if
(!isset($GLOBALS['phpgw_info']['server']['install_id']))
{
! $GLOBALS['phpgw_info']['server']['install_id']
! =
md5($GLOBALS['phpgw']->common->randomstring(15));
$save_rep = True;
}
***************
*** 202,205 ****
--- 203,207 ----
$config->value('sessions_timeout',$GLOBALS['phpgw_info']['server']['sessions_timeout']);
$config->value('sessions_app_timeout',$GLOBALS['phpgw_info']['server']['sessions_app_timeout']);
+ $config->value('max_history',
$GLOBALS['phpgw_info']['server']['max_history'] );
$config->save_repository();
unset($config);
***************
*** 208,218 ****
/**
! * Introspection for XML-RPC/SOAP
! * Diabled - why??
! *
! * @param string $_type tpye of introspection being sought
! * @return array available methods and args
! */
! function DONTlist_methods($_type)
{
if (is_array($_type))
--- 210,220 ----
/**
! * Introspection for XML-RPC/SOAP
! * Diabled - why??
! *
! * @param string $_type tpye of introspection being sought
! * @return array available methods and args
! */
! function DONTlist_methods($_type)
{
if (is_array($_type))
***************
*** 220,224 ****
$_type = $_type['type'];
}
!
switch($_type)
{
--- 222,226 ----
$_type = $_type['type'];
}
!
switch($_type)
{
***************
*** 248,258 ****
/**
! * Check to see if a session is still current and valid
! *
! * @param string $sessionid session id to be verfied
! * @param string $kp3 ?? to be verified
! * @return bool is the session valid?
! */
! function verify($sessionid='',$kp3='')
{
if(empty($sessionid) || !$sessionid)
--- 250,261 ----
/**
! * Check to see if a session is still current and valid
! *
! * @param string $sessionid session id to be verfied
! * @param string $kp3 ?? to be verified
! * @return bool is the session valid?
! */
!
! function verify($sessionid='',$kp3='')
{
if(empty($sessionid) || !$sessionid)
***************
*** 261,271 ****
$kp3 =
get_var('kp3',array('GET','COOKIE'));
}
!
$this->sessionid = $sessionid;
$this->kp3 = $kp3;
!
$session = $this->read_session($sessionid);
//echo "<p>session::verify(id='$sessionid'): \n";
print_r($session); echo "</p>\n";
!
if ($session['session_dla'] <= (time() -
$GLOBALS['phpgw_info']['server']['sessions_timeout']))
{
--- 264,274 ----
$kp3 =
get_var('kp3',array('GET','COOKIE'));
}
!
$this->sessionid = $sessionid;
$this->kp3 = $kp3;
!
$session = $this->read_session($sessionid);
//echo "<p>session::verify(id='$sessionid'): \n";
print_r($session); echo "</p>\n";
!
if ($session['session_dla'] <= (time() -
$GLOBALS['phpgw_info']['server']['sessions_timeout']))
{
***************
*** 407,416 ****
* Functions for creating and verifying the session
*/
!
! /**
! * Get the ip address of current users
! *
! * @return string ip address
! */
function getuser_ip()
{
--- 410,419 ----
* Functions for creating and verifying the session
*/
!
! /**
! * Get the ip address of current users
! *
! * @return string ip address
! */
function getuser_ip()
{
***************
*** 419,427 ****
/**
! * Set the domain used for cookies
! *
! * @return string domain
! */
! function phpgw_set_cookiedomain()
{
$dom = $_SERVER['HTTP_HOST'];
--- 422,430 ----
/**
! * Set the domain used for cookies
! *
! * @return string domain
! */
! function phpgw_set_cookiedomain()
{
$dom = $_SERVER['HTTP_HOST'];
***************
*** 455,465 ****
/**
! * Set a cookie
! *
! * @param string $cookiename name of cookie to be set
! * @param string $cookievalue value to be used, if unset cookie is
cleared (optional)
! * @param int $cookietime when cookie should expire, 0 for session
only (optional)
! */
! function phpgw_setcookie($cookiename,$cookievalue='',$cookietime=0)
{
if (!$this->cookie_domain)
--- 458,468 ----
/**
! * Set a cookie
! *
! * @param string $cookiename name of cookie to be set
! * @param string $cookievalue value to be used, if unset cookie
is cleared (optional)
! * @param int $cookietime when cookie should expire, 0 for
session only (optional)
! */
! function
phpgw_setcookie($cookiename,$cookievalue='',$cookietime=0)
{
if (!$this->cookie_domain)
***************
*** 471,482 ****
/**
! * Create a new session
! *
! * @param string $login user login
! * @param string $passwd user password
! * @param string $passwd_type type of password being used, ie
plaintext, md5, sha1
! * @return string session id
! */
! function create($login,$passwd = '',$passwd_type = '')
{
if (is_array($login))
--- 474,485 ----
/**
! * Create a new session
! *
! * @param string $login user login
! * @param string $passwd user password
! * @param string $passwd_type type of password being used, ie
plaintext, md5, sha1
! * @return string session id
! */
! function create($login,$passwd = '',$passwd_type = '')
{
if (is_array($login))
***************
*** 592,596 ****
/**
! * Write or update (for logout) the access_log
*
* @param string $sessionid id of session or 0 for unsuccessful
logins
--- 595,599 ----
/**
! * Write or update (for logout) the access_log
*
* @param string $sessionid id of session or 0 for unsuccessful
logins
***************
*** 624,628 ****
/**
* Protect against brute force attacks, block login if too many
unsuccessful login attmepts
! *
* @param string $login account_lid (evtl. with domain)
* @param string $ip ip of the user
--- 627,631 ----
/**
* Protect against brute force attacks, block login if too many
unsuccessful login attmepts
! *
* @param string $login account_lid (evtl. with domain)
* @param string $ip ip of the user
***************
*** 679,689 ****
/**
! * Verfy a peer server access request
! *
! * @param string $sessionid session id to verfiy
! * @param string $kp3 ??
! * @return bool verfied?
! */
! function verify_server($sessionid, $kp3)
{
$GLOBALS['phpgw']->interserver =
CreateObject('phpgwapi.interserver');
--- 682,692 ----
/**
! * Verfy a peer server access request
! *
! * @param string $sessionid session id to verfiy
! * @param string $kp3 ??
! * @return bool verfied?
! */
! function verify_server($sessionid, $kp3)
{
$GLOBALS['phpgw']->interserver =
CreateObject('phpgwapi.interserver');
***************
*** 809,819 ****
/**
! * Validate a peer server login request
! *
! * @param string $login login name
! * @param string $password password
! * @return bool login ok?
! */
! function create_server($login,$passwd)
{
$GLOBALS['phpgw']->interserver =
CreateObject('phpgwapi.interserver');
--- 812,822 ----
/**
! * Validate a peer server login request
! *
! * @param string $login login name
! * @param string $password password
! * @return bool login ok?
! */
! function create_server($login,$passwd)
{
$GLOBALS['phpgw']->interserver =
CreateObject('phpgwapi.interserver');
***************
*** 884,893 ****
/**
* Functions for appsession data and session cache
! */
!
/**
! * Is this also useless?? (skwashd)
! */
! function read_repositories($cached='',$write_cache=True)
{
$GLOBALS['phpgw']->acl->acl($this->account_id);
--- 887,896 ----
/**
* Functions for appsession data and session cache
! */
!
/**
! * Is this also useless?? (skwashd)
! */
! function read_repositories($cached='',$write_cache=True)
{
$GLOBALS['phpgw']->acl->acl($this->account_id);
***************
*** 920,925 ****
/**
! * Is this also useless?? (skwashd)
! */
function setup_cache($write_cache=True)
{
--- 923,928 ----
/**
! * Is this also useless?? (skwashd)
! */
function setup_cache($write_cache=True)
{
***************
*** 945,956 ****
}
}
!
! /**
! * This looks to be useless
! * This will capture everything in the $GLOBALS['phpgw_info']
including server info,
! * and store it in appsessions. This is really incompatible with any
type of restoring
! * from appsession as the saved user info is really in ['user'] rather
than the root of
! * the structure, which is what this class likes.
! */
function save_repositories()
{
--- 948,960 ----
}
}
!
!
! /**
! * This looks to be useless
! * This will capture everything in the $GLOBALS['phpgw_info']
including server info,
! * and store it in appsessions. This is really incompatible
with any type of restoring
! * from appsession as the saved user info is really in ['user']
rather than the root of
! * the structure, which is what this class likes.
! */
function save_repositories()
{
***************
*** 982,987 ****
/**
! * Save the current values of all registered variables
! */
function save()
{
--- 986,991 ----
/**
! * Save the current values of all registered variables
! */
function save()
{
***************
*** 1002,1009 ****
/**
! * Create a list a variable names, which data needs to be restored
! *
! * @param string $_variableName name of variable to be registered
! */
function register($_variableName)
{
--- 1006,1013 ----
/**
! * Create a list a variable names, which data needs to be
restored
! *
! * @param string $_variableName name of variable to be registered
! */
function register($_variableName)
{
***************
*** 1013,1020 ****
/**
! * Mark variable as unregistered
! *
! * @param string $_variableName name of variable to deregister
! */
function unregister($_variableName)
{
--- 1017,1024 ----
/**
! * Mark variable as unregistered
! *
! * @param string $_variableName name of variable to deregister
! */
function unregister($_variableName)
{
***************
*** 1024,1032 ****
/**
! * Check if we have a variable registred already
! *
! * @param string $_variableName name of variable to check
! * @return bool was the variable found?
! */
function is_registered($_variableName)
{
--- 1028,1036 ----
/**
! * Check if we have a variable registred already
! *
! * @param string $_variableName name of variable to check
! * @return bool was the variable found?
! */
function is_registered($_variableName)
{
***************
*** 1040,1048 ****
}
}
/**
! * Additional tracking of user actions - prevents reposts/use of back
button
! *
! * @author skwashd
! * @return string current history id
*/
function generate_click_history()
--- 1044,1053 ----
}
}
+
/**
! * Additional tracking of user actions - prevents reposts/use of
back button
! *
! * @author skwashd
! * @return string current history id
*/
function generate_click_history()
***************
*** 1063,1069 ****
/**
! * Detects if the page has already been called before - good for forms
! *
! * @author skwashd
* @param bool $diplay_error when implemented will use the
generic error handling code
* @return True if called previously, else False - call ok
--- 1068,1074 ----
/**
! * Detects if the page has already been called before - good for
forms
! *
! * @author skwashd
* @param bool $diplay_error when implemented will use the
generic error handling code
* @return True if called previously, else False - call ok
***************
*** 1092,1101 ****
/**
! * Generate a url which supports url or cookies based sessions
! *
! * @param string $url a url relative to the phpgroupware install root
! * @param array $extravars query string arguements
! * @return string generated url
! */
function link($url, $extravars = '')
{
--- 1097,1106 ----
/**
! * Generate a url which supports url or cookies based sessions
! *
! * @param string $url a url relative to the phpgroupware install
root
! * @param array $extravars query string arguements
! * @return string generated url
! */
function link($url, $extravars = '')
{
***************
*** 1199,1257 ****
return $url;
}
! /**
! * The remaining methods are abstract - as they are unique for each
session handler
! */
!
! /**
! * Load user's session information
! *
! * @param string $sessionid user's session id string
! * @return mixed the session data
! */
function read_session($sessionid)
{}
/**
! * Remove stale sessions out of the database
! */
function clean_sessions()
{}
/**
! * Set paramaters for cookies - only implemented in PHP4 sessions
! *
! * @param string $domain domain name to use in cookie
! */
!
! function set_cookie_params($domain)
{}
/**
! * Create a new session
! *
! * @param string $login user login
! * @param string $user_ip users ip address
! * @param int $now time now as a unix timestamp
! * @param string $session_flags A = Anonymous, N = Normal
! */
! function register_session($login,$user_ip,$now,$session_flags)
{}
/**
! * Update the date last active info for the session, so the login does
not expire
! *
! * @return bool did it suceed?
! */
function update_dla()
{}
/**
! * Terminate a session
! *
! * @param string $sessionid the id of the session to be terminated
! * @param string $kp3 - NOT SURE
! * @return bool did it suceed?
! */
! function destroy($sessionid, $kp3)
{}
--- 1204,1263 ----
return $url;
}
!
! /**
! * The remaining methods are abstract - as they are unique for
each session handler
! */
!
!
! /**
! * Load user's session information
! *
! * @param string $sessionid user's session id string
! * @return mixed the session data
! */
function read_session($sessionid)
{}
/**
! * Remove stale sessions out of the database
! */
function clean_sessions()
{}
/**
! * Set paramaters for cookies - only implemented in PHP4 sessions
! *
! * @param string $domain domain name to use in cookie
! */
! function set_cookie_params($domain)
{}
/**
! * Create a new session
! *
! * @param string $login user login
! * @param string $user_ip users ip address
! * @param int $now time now as a unix timestamp
! * @param string $session_flags A = Anonymous, N = Normal
! */
! function register_session($login,$user_ip,$now,$session_flags)
{}
/**
! * Update the date last active info for the session, so the
login does not expire
! *
! * @return bool did it suceed?
! */
function update_dla()
{}
/**
! * Terminate a session
! *
! * @param string $sessionid the id of the session to be
terminated
! * @param string $kp3 - NOT SURE
! * @return bool did it suceed?
! */
! function destroy($sessionid, $kp3)
{}
***************
*** 1259,1292 ****
* Functions for appsession data and session cache
*/
!
! /**
! * Delete all data from the session cache for a user
! *
! * @param int $accountid user account id, defaults to current user
(optional)
! */
function delete_cache($accountid='')
{}
/**
! * Stores or retrieves information from the sessions cache
! *
! * @param string $location identifier for data
! * @param string $appname name of app which is responsbile for the data
! * @param mixed $data data to be stored, if left blank data is
retreived (optional)
! * @return mixed data from cache, only returned if $data arg is not
used
! */
! function appsession($location = 'default', $appname = '', $data =
'##NOTHING##')
{}
/**
* Get list of normal / non-anonymous sessions
! * Note: The data from the session-files get cached in the
app_session phpgwapi/php4_session_cache
! *
* @author ralfbecker
! * @param int $start session to start at
! * @param string $order field to sort on
! * @param string $sort sort order
! * @param bool $all_no_sort list all with out sorting (optional)
default False
! * @return array info for all current sessions
*/
function list_sessions($start,$order,$sort,$all_no_sort = False)
--- 1265,1299 ----
* Functions for appsession data and session cache
*/
!
! /**
! * Delete all data from the session cache for a user
! *
! * @param int $accountid user account id, defaults to current
user (optional)
! */
function delete_cache($accountid='')
{}
/**
! * Stores or retrieves information from the sessions cache
! *
! * @param string $location identifier for data
! * @param string $appname name of app which is responsbile for
the data
! * @param mixed $data data to be stored, if left blank data is
retreived (optional)
! * @return mixed data from cache, only returned if $data arg is
not used
! */
! function appsession($location = 'default', $appname = '', $data
= '##NOTHING##')
{}
/**
* Get list of normal / non-anonymous sessions
! * Note: The data from the session-files get cached in the
! * app_session phpgwapi/php4_session_cache
! *
* @author ralfbecker
! * @param int $start session to start at
! * @param string $order field to sort on
! * @param string $sort sort order
! * @param bool $all_no_sort list all with out sorting (optional)
default False
! * @return array info for all current sessions
*/
function list_sessions($start,$order,$sort,$all_no_sort = False)
***************
*** 1296,1303 ****
* Get the number of normal / non-anonymous sessions
*
! * @author ralfbecker
! * @return int number of sessions
*/
function total()
{}
! }
\ No newline at end of file
--- 1303,1310 ----
* Get the number of normal / non-anonymous sessions
*
! * @author ralfbecker
! * @return int number of sessions
*/
function total()
{}
! }
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] phpgwapi/inc class.sessions.inc.php, 1.104.4.15, 1.104.4.16 class.sessions_php4.inc.php, 1.6.2.10.2.6, 1.6.2.10.2.7,
Dave Hall <address@hidden> <=