Fix for latest PHP 5.4.x changes
[mailer.git] / inc / wrapper-functions.php
index ce74b918bd4c1a10208dee248b5106f238204ede..5195c0c1e7c716abe6bffe17f24367b875cb2994 100644 (file)
@@ -540,14 +540,14 @@ function isNicknameUsed ($userid) {
 }
 
 // Getter for 'what' value
-function getWhat () {
+function getWhat ($strict = true) {
        // Default is null
        $what = NULL;
 
        // Is the value set?
-       if (isWhatSet(true)) {
+       if (isWhatSet($strict)) {
                // Then use it
-               $what = $GLOBALS['what'];
+               $what = $GLOBALS['__what'];
        } // END - if
 
        // Return it
@@ -556,7 +556,7 @@ function getWhat () {
 
 // Setter for 'what' value
 function setWhat ($newWhat) {
-       $GLOBALS['what'] = SQL_ESCAPE($newWhat);
+       $GLOBALS['__what'] = $newWhat;
 }
 
 // Setter for 'what' from configuration
@@ -571,7 +571,7 @@ function setWhatFromConfig ($configEntry) {
 // Checks wether what is set and optionally aborts on miss
 function isWhatSet ($strict =  false) {
        // Check for it
-       $isset = isset($GLOBALS['what']);
+       $isset = (isset($GLOBALS['__what']) && (!empty($GLOBALS['__what'])));
 
        // Should we abort here?
        if (($strict === true) && ($isset === false)) {
@@ -591,7 +591,7 @@ function getAction ($strict = true) {
        // Is the value set?
        if (isActionSet(($strict) && (isHtmlOutputMode()))) {
                // Then use it
-               $action = $GLOBALS['action'];
+               $action = $GLOBALS['__action'];
        } // END - if
 
        // Return it
@@ -600,13 +600,13 @@ function getAction ($strict = true) {
 
 // Setter for 'action' value
 function setAction ($newAction) {
-       $GLOBALS['action'] = SQL_ESCAPE($newAction);
+       $GLOBALS['__action'] = $newAction;
 }
 
 // Checks wether action is set and optionally aborts on miss
 function isActionSet ($strict =  false) {
        // Check for it
-       $isset = ((isset($GLOBALS['action'])) && (!empty($GLOBALS['action'])));
+       $isset = ((isset($GLOBALS['__action'])) && (!empty($GLOBALS['__action'])));
 
        // Should we abort here?
        if (($strict === true) && ($isset === false)) {
@@ -626,7 +626,7 @@ function getModule ($strict = true) {
        // Is the value set?
        if (isModuleSet($strict)) {
                // Then use it
-               $module = $GLOBALS['module'];
+               $module = $GLOBALS['__module'];
        } // END - if
 
        // Return it
@@ -636,13 +636,13 @@ function getModule ($strict = true) {
 // Setter for 'module' value
 function setModule ($newModule) {
        // Secure it and make all modules lower-case
-       $GLOBALS['module'] = SQL_ESCAPE(strtolower($newModule));
+       $GLOBALS['__module'] = strtolower($newModule);
 }
 
 // Checks wether module is set and optionally aborts on miss
 function isModuleSet ($strict =  false) {
        // Check for it
-       $isset = (!empty($GLOBALS['module']));
+       $isset = ((isset($GLOBALS['__module'])) && (!empty($GLOBALS['__module'])));
 
        // Should we abort here?
        if (($strict === true) && ($isset === false)) {
@@ -651,7 +651,7 @@ function isModuleSet ($strict =  false) {
        } // END - if
 
        // Return it
-       return (($isset === true) && ($GLOBALS['module'] != 'unknown')) ;
+       return (($isset === true) && ($GLOBALS['__module'] != 'unknown')) ;
 }
 
 // Getter for 'output_mode' value
@@ -677,7 +677,9 @@ function getScriptOutputMode () {
 
 // Setter for 'output_mode' value
 function setOutputMode ($newOutputMode) {
-       $GLOBALS['output_mode'] = (int) $newOutputMode;
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'output_mode=' . $newOutputMode);
+       $GLOBALS['output_mode']         = (int) $newOutputMode;
+       $GLOBALS['getScriptOutputMode'] = (int) $newOutputMode;
 }
 
 // Checks wether output_mode is set and optionally aborts on miss
@@ -1106,6 +1108,15 @@ function getHttpStatus () {
  * @access  private
  */
 function sendRawRedirect ($url) {
+       // Clear output buffer
+       clearOutputBuffer();
+
+       // Clear own output buffer
+       $GLOBALS['output'] = '';
+
+       // To make redirects working (no content type), output mode must be raw
+       setOutputMode(-1);
+
        // Send helping header
        setHttpStatus('302 Found');
 
@@ -1221,6 +1232,12 @@ function getTotalRandomRefidUser () {
 
 // Is given userid valid?
 function isValidUserId ($userid) {
+       // Handle NULL
+       if (is_null($userid)) {
+               // Do not handle this as of below isset() will always return false
+               return false;
+       } // END - if
+
        // Do we have cache?
        if (!isset($GLOBALS[__FUNCTION__][$userid])) {
                // Check it out
@@ -2431,6 +2448,18 @@ function isDisplayHomeInIndexEnabled () {
        return $GLOBALS[__FUNCTION__];
 }
 
+// Getter for 'admin_menu_javascript'
+function getAdminMenuJavascript () {
+       // Is the cache entry set?
+       if (!isset($GLOBALS[__FUNCTION__])) {
+               // No, so determine it
+               $GLOBALS[__FUNCTION__] = getConfig('admin_menu_javascript');
+       } // END - if
+
+       // Return cached entry
+       return $GLOBALS[__FUNCTION__];
+}
+
 // Checks wether proxy configuration is used
 function isProxyUsed () {
        // Do we have cache?
@@ -2554,6 +2583,18 @@ function isRawOutputMode () {
        return (getScriptOutputMode() == -1);
 }
 
+// Wrapper to check if output mode is AJAX
+function isAjaxOutputMode () {
+       // Determine it
+       return (getScriptOutputMode() == -2);
+}
+
+// Wrapper to check if output mode is image
+function isImageOutputMode () {
+       // Determine it
+       return (getScriptOutputMode() == -3);
+}
+
 // Wrapper to generate a user email link
 function generateWrappedUserEmailLink ($email) {
        // Just call the inner function
@@ -2642,10 +2683,17 @@ function convertCommaToDotInPostDataArray ($postEntries) {
  * @link       http://de.php.net/manual/en/function.floatval.php#92563
  */
 function parseFloat ($floatString){
-    $LocaleInfo = localeconv();
-    $floatString = str_replace($LocaleInfo['mon_thousands_sep'] , '', $floatString);
-    $floatString = str_replace($LocaleInfo['mon_decimal_point'] , '.', $floatString);
-    return floatval($floatString);
+       // Load locale info
+       $LocaleInfo = localeconv();
+
+       // Remove thousand separators
+       $floatString = str_replace($LocaleInfo['mon_thousands_sep'] , '' , $floatString);
+
+       // Convert decimal point
+       $floatString = str_replace($LocaleInfo['mon_decimal_point'] , '.', $floatString);
+
+       // Return float value of converted string
+       return floatval($floatString);
 }
 
 // Generates a YES/NO option list from given default
@@ -2675,5 +2723,35 @@ function getTotalUnconfirmedMails ($userid) {
        return $GLOBALS[__FUNCTION__][$userid];
 }
 
+// Checks wether 'mailer_theme' was found in session
+function isMailerThemeSet () {
+       // Check session
+       return isSessionVariableSet('mailer_theme');
+}
+
+/**
+ * Setter for theme in session (This setter does return the success of
+ * setSession() which is required e.g. for destroySponsorSession().
+ */
+function setMailerTheme ($newTheme) {
+       // Set it in session
+       return setSession('mailer_theme', $newTheme);
+}
+
+/**
+ * Getter for theme from session (This getter does return 'mailer_theme' from
+ * session data or throws an error if not possible
+ */
+function getMailerTheme () {
+       // Is 'mailer_theme' set?
+       if (!isMailerThemeSet()) {
+               // No, then abort here
+               debug_report_bug(__FUNCTION__, __LINE__, 'mailer_theme not set in session. Please fix your code.');
+       } // END - if
+
+       // Return the theme from session
+       return getSession('mailer_theme');
+}
+
 // [EOF]
 ?>