X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fsession-functions.php;h=384e3f465ec1a2d7df2195b81b1f31b524c6f28d;hb=ffc8edeb9f05685c42ffa01e030e66436bd1d3c1;hp=df1bd2f1c09cb41dfc6888eb98f562b6837f5ded;hpb=a090e351c49fe021fb3064325694da03402332e0;p=mailer.git
diff --git a/inc/session-functions.php b/inc/session-functions.php
index df1bd2f1c0..384e3f465e 100644
--- a/inc/session-functions.php
+++ b/inc/session-functions.php
@@ -1,7 +1,7 @@
\n";
- unset($_SESSION[$var]);
- return session_unregister($var);
- } elseif (("".$value."" != '') && (!isSessionVariableSet($var))) {
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UNSET:' . $var . '=' . getSession($var));
+ unset($GLOBALS['_SESSION'][$var]);
+ if (isPhpVersionEqualNewer('5.3.0')) {
+ // session_unregister() is deprecated as of 5.3.0
+ return TRUE;
+ } else {
+ // PHP version < 5.3.0
+ return session_unregister($var);
+ }
+ } elseif (('' . $value . '' != '') && (!isSessionVariableSet($var))) {
// Set session
- //* DEBUG: */ echo "SET:".$var."=".$value."
\n";
- $_SESSION[$var] = $value;
- return session_register($var);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'SET:' . $var . '=' . $value);
+ $GLOBALS['_SESSION'][$var] = $value;
+ if (isPhpVersionEqualNewer('5.3.0')) {
+ // session_unregister() is deprecated as of 5.3.0
+ return TRUE;
+ } else {
+ // PHP version < 5.3.0
+ return session_register($var);
+ }
} elseif (!empty($value)) {
// Update session
- //* DEBUG: */ echo "UPDATE:".$var."=".$value."
\n";
- $_SESSION[$var] = $value;
- return true;
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UPDATE:' . $var . '=' . $value);
+ $GLOBALS['_SESSION'][$var] = $value;
+ return TRUE;
}
// Ignored (but valid)
- //* DEBUG: */ echo "IGNORED:".$var."=".$value."
\n";
- return true;
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'IGNORED:' . $var . '=' . $value);
+ return TRUE;
}
-// Check wether a session variable is set
+// Check whether a session variable is set
function isSessionVariableSet ($var) {
- //* DEBUG: */ print __FUNCTION__."(".__LINE__."):var={$var}
\n";
- return (isset($_SESSION[$var]));
+ // Warning: DO NOT call logDebugMessage() from here, this will cause an endless loop
+ return (isset($GLOBALS['_SESSION'][$var]));
}
-// Returns wether the value of the session variable or NULL if not set
-function get_session ($var) {
- // Default is not found! ;-)
- $value = null;
-
- // Is the variable there or cached values?
- if (isset($GLOBALS['cache_array']['session'][$var])) {
- // Get cached value (skips a lot SQL_ESCAPE() calles!
- //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$var."-CACHE!
\n";
- $value = $GLOBALS['cache_array']['session'][$var];
- } elseif (isSessionVariableSet($var)) {
- // Then get it secured!
- //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$var."-RESOLVE!
\n";
- $value = SQL_ESCAPE($_SESSION[$var]);
+// Returns whether the value of the session variable or NULL if not set
+function getSession ($var) {
+ // Default is not found ;-)
+ $value = NULL;
- // Cache the value
- $GLOBALS['cache_array']['session'][$var] = $value;
+ // Is the variable there?
+ if (isSessionVariableSet($var)) {
+ // Then get it secured!
+ $value = SQL_ESCAPE($GLOBALS['_SESSION'][$var]);
} // END - if
// Return the value
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $var . '=' . $value);
return $value;
}
+// Get whole session array
+function getSessionArray () {
+ // Simply return it
+ return $GLOBALS['_SESSION'];
+}
+
// Destroy user session
-function destroy_user_session () {
+function destroyMemberSession ($destroy = FALSE) {
// Reset userid
- setUserId(0);
+ initMemberId();
// Remove all user data from session
- return ((set_session('userid', '')) && (set_session('u_hash', '')));
+ if ($destroy === TRUE) {
+ // Destroy whole session
+ return session_destroy();
+ } else {
+ return ((setSession('userid', '')) && (setSession('u_hash', '')));
+ }
}
// Destroys the admin session
-function destroyAdminSession ($destroy = true) {
+function destroyAdminSession ($destroy = TRUE) {
// Kill maybe existing session variables including array elements
- set_session('admin_login', '');
- set_session('admin_md5' , '');
- set_session('admin_last' , '');
- set_session('admin_to' , '');
+ setAdminId(0);
+ setAdminMd5('');
+ setAdminLast('');
- // Destroy session and return status
- if ($destroy) {
+ // Destroy session if requested and return status
+ if ($destroy === TRUE) {
return session_destroy();
} // END - if
// All fine if we shall not really destroy the session
- return true;
+ return TRUE;
}
// [EOF]