X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fsession-functions.php;h=7601911fc83cda7d869817202f844b493098a9eb;hb=6bd47661d7ec406cd276f0835364b1e3f933d6c8;hp=ca8a38fff1bfab6dccc20db7ac897deb3e5b4f10;hpb=f0957663700eda99144d6d1eed2d8b225225cf11;p=mailer.git diff --git a/inc/session-functions.php b/inc/session-functions.php index ca8a38fff1..7601911fc8 100644 --- a/inc/session-functions.php +++ b/inc/session-functions.php @@ -16,8 +16,8 @@ * $Author:: $ * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -38,61 +38,64 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} +} // END - if // Unset/set session variables function setSession ($var, $value) { // Abort in CSS mode here - if (isCssOutputMode()) return true; + if (isCssOutputMode()) { + return TRUE; + } // END - if // Trim value and session variable - $var = trim(secureString($var)); $value = trim($value); + $var = trim(secureString($var)); + $value = trim($value); // Is the session variable set? if (('' . $value . '' == '') && (isSessionVariableSet($var))) { // Remove the session //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UNSET:' . $var . '=' . getSession($var)); unset($GLOBALS['_SESSION'][$var]); - if (phpversion() >= '5.3.1') { - // session_unregister() is deprecated as of 5.3.1 - return true; + if (isPhpVersionEqualNewer('5.3.0')) { + // session_unregister() is deprecated as of 5.3.0 + return TRUE; } else { - // PHP version < 5.3.1 + // PHP version < 5.3.0 return session_unregister($var); } } elseif (('' . $value . '' != '') && (!isSessionVariableSet($var))) { // Set session //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'SET:' . $var . '=' . $value); $GLOBALS['_SESSION'][$var] = $value; - if (phpversion() >= '5.3.1') { - // session_unregister() is deprecated as of 5.3.1 - return true; + if (isPhpVersionEqualNewer('5.3.0')) { + // session_unregister() is deprecated as of 5.3.0 + return TRUE; } else { - // PHP version < 5.3.1 + // PHP version < 5.3.0 return session_register($var); } } elseif (!empty($value)) { // Update session //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UPDATE:' . $var . '=' . $value); $GLOBALS['_SESSION'][$var] = $value; - return true; + return TRUE; } // Ignored (but valid) //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'IGNORED:' . $var . '=' . $value); - return true; + return TRUE; } -// Check wether a session variable is set +// Check whether a session variable is set function isSessionVariableSet ($var) { - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "var={$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 +// Returns whether the value of the session variable or NULL if not set function getSession ($var) { - // Default is not found! ;-) - $value = null; + // Default is not found ;-) + $value = NULL; // Is the variable there? if (isSessionVariableSet($var)) { @@ -105,29 +108,43 @@ function getSession ($var) { return $value; } +// Get whole session array +function getSessionArray () { + // Simply return it + return $GLOBALS['_SESSION']; +} + // Destroy user session -function destroyMemberSession () { +function destroyMemberSession ($destroy = FALSE) { // Reset userid initMemberId(); // Remove all user data from session - return ((setSession('userid', '')) && (setSession('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 setAdminId(0); setAdminMd5(''); setAdminLast(''); + // Set cache to FALSE + $GLOBALS['isAdmin'] = FALSE; + // Destroy session if requested and return status - if ($destroy === true) { + if ($destroy === TRUE) { return session_destroy(); } // END - if // All fine if we shall not really destroy the session - return true; + return TRUE; } // [EOF]