From f93f1a652ffec5cca0f9bdfb7895a5439382bd2a Mon Sep 17 00:00:00 2001 From: canyonknight Date: Wed, 23 May 2012 15:29:02 -0400 Subject: logout.php: Pull out DB code * Move DB code for removing a session in logout.php to a new function in acctfuncs.inc.php * Add ability for clear_expired_sessions function to check for DB connection * Centralization of DB code important in a future transition to PDO interface Signed-off-by: canyonknight Signed-off-by: Lukas Fleischer --- web/lib/acctfuncs.inc.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'web/lib/acctfuncs.inc.php') diff --git a/web/lib/acctfuncs.inc.php b/web/lib/acctfuncs.inc.php index 7a18f76..ecb9f99 100644 --- a/web/lib/acctfuncs.inc.php +++ b/web/lib/acctfuncs.inc.php @@ -681,10 +681,25 @@ function user_is_privileged($id, $dbh) { } +# Remove session on logout +function delete_session_id($sid, $dbh=NULL) { + if(!$dbh) { + $dbh = db_connect(); + } + + $q = "DELETE FROM Sessions WHERE SessionID = '"; + $q.= db_escape_string($sid) . "'"; + db_query($q, $dbh); +} + # Clear out old expired sessions. -function clear_expired_sessions( $dbh ) { +function clear_expired_sessions($dbh=NULL) { global $LOGIN_TIMEOUT; + if(!$dbh) { + $dbh = db_connect(); + } + $q = "DELETE FROM Sessions WHERE LastUpdateTS < (UNIX_TIMESTAMP() - $LOGIN_TIMEOUT)"; db_query($q, $dbh); -- cgit v1.2.3-70-g09d2