Reverted of changes in 1704, see ticket #160
[mailer.git] / inc / wrapper-functions.php
index 01accde60d52451f13fe0b5e0f8249e84eecfd1c..9de0106688795fd32e271459b3955db2ff1afe76 100644 (file)
@@ -18,6 +18,7 @@
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -42,31 +43,27 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Read a given file
-function readFromFile ($FQFN, $sqlPrepare = false) {
+function readFromFile ($FQFN) {
        // Sanity-check if file is there (should be there, but just to make it sure)
        if (!isFileReadable($FQFN)) {
                // This should not happen
                debug_report_bug(__FUNCTION__.': File ' . basename($FQFN) . ' is not readable!');
        } // END - if
 
-       // Load the file
-       if (function_exists('file_get_contents')) {
-               // Use new function
-               $content = file_get_contents($FQFN);
-       } else {
-               // Fall-back to implode-file chain
-               $content = implode('', file($FQFN));
-       }
-
-       // Prepare SQL queries?
-       if ($sqlPrepare === true) {
-               // Remove some unwanted chars
-               $content = str_replace("\r", '', $content);
-               $content = str_replace("\n\n", "\n", $content);
+       // Is it cached?
+       if (!isset($GLOBALS['file_content'][$FQFN])) {
+               // Load the file
+               if (function_exists('file_get_contents')) {
+                       // Use new function
+                       $GLOBALS['file_content'][$FQFN] = file_get_contents($FQFN);
+               } else {
+                       // Fall-back to implode-file chain
+                       $GLOBALS['file_content'][$FQFN] = implode('', file($FQFN));
+               }
        } // END - if
 
        // Return the content
-       return $content;
+       return $GLOBALS['file_content'][$FQFN];
 }
 
 // Writes content to a file
@@ -110,6 +107,9 @@ function writeToFile ($FQFN, $content, $aquireLock = false) {
        // Mark it as readable
        $GLOBALS['file_readable'][$FQFN] = true;
 
+       // Remember content in cache
+       $GLOBALS['file_content'][$FQFN] = $content;
+
        // Return status
        return changeMode($FQFN, 0644);
 }
@@ -170,7 +170,13 @@ function isFileReadable ($FQFN) {
        if (!isset($GLOBALS['file_readable'][$FQFN])) {
                // Check all...
                $GLOBALS['file_readable'][$FQFN] = ((file_exists($FQFN)) && (is_file($FQFN)) && (is_readable($FQFN)));
-       } // END - if
+
+               // Debug message
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'file=' . basename($FQFN) . ' - CHECK! (' . intval($GLOBALS['file_readable'][$FQFN]) . ')');
+       } else {
+               // Cache used
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'file=' . basename($FQFN) . ' - CACHE! (' . intval($GLOBALS['file_readable'][$FQFN]) . ')');
+       }
 
        // Return result
        return $GLOBALS['file_readable'][$FQFN];
@@ -262,12 +268,18 @@ function detectQueryString () {
        return str_replace('&', '&', (getenv('QUERY_STRING')));
 }
 
+// "Getter" for SERVER_NAME
+function detectServerName () {
+       // Return it
+       return (getenv('SERVER_NAME'));
+}
+
 // Check wether we are installing
 function isInstalling () {
        // Determine wether we are installing
        if (!isset($GLOBALS['mxchange_installing'])) {
                // Check URL (css.php/js.php need this)
-               $GLOBALS['mxchange_installing'] = isGetRequestElementSet('installing');
+               $GLOBALS['mxchange_installing'] = isGetRequestParameterSet('installing');
        } // END - if
 
        // Return result
@@ -329,6 +341,11 @@ function isDebugModeEnabled () {
        return ((isConfigEntrySet('DEBUG_MODE')) && (getConfig('DEBUG_MODE') == 'Y'));
 }
 
+// Checks wether SQL debugging is enabled
+function isSqlDebuggingEnabled () {
+       return ((isConfigEntrySet('DEBUG_SQL')) && (getConfig('DEBUG_SQL') == 'Y'));
+}
+
 // Checks wether we shall debug regular expressions
 function isDebugRegExpressionEnabled () {
        // Simply check it
@@ -396,10 +413,12 @@ function flushHeaders () {
                debug_report_bug('Headers already sent!');
        } // END - if
 
-       // Flush all headers
-       foreach ($GLOBALS['header'] as $header) {
-               header($header);
-       } // END - foreach
+       // Flush all headers if found
+       if ((isset($GLOBALS['header'])) && (is_array($GLOBALS['header']))) {
+               foreach ($GLOBALS['header'] as $header) {
+                       header($header);
+               } // END - foreach
+       } // END - if
 
        // Mark them as flushed
        $GLOBALS['header'] = array();
@@ -437,9 +456,9 @@ function removeFile ($FQFN) {
 // Wrapper for $_POST['sel']
 function countPostSelection ($element = 'sel') {
        // Is it set?
-       if (isPostRequestElementSet($element)) {
+       if (isPostRequestParameterSet($element)) {
                // Return counted elements
-               return countSelection(postRequestElement($element));
+               return countSelection(postRequestParameter($element));
        } else {
                // Return zero if not found
                return 0;
@@ -504,7 +523,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']);
 
        // Should we abort here?
        if (($strict === true) && ($isset === false)) {
@@ -539,7 +558,7 @@ function setAction ($newAction) {
 // Checks wether action is set and optionally aborts on miss
 function isActionSet ($strict =  false) {
        // Check for it
-       $isset = (isset($GLOBALS['action']));
+       $isset = ((isset($GLOBALS['action'])) && (!empty($GLOBALS['action'])));
 
        // Should we abort here?
        if (($strict === true) && ($isset === false)) {
@@ -675,7 +694,17 @@ function setUsername ($userName) {
 
 // Get username
 function getUsername () {
-       return $GLOBALS['username'];
+       // default is guest
+       $username = getMessage('USERNAME_GUEST');
+
+       // User name set?
+       if (isset($GLOBALS['username'])) {
+               // Use the set name
+               $username = $GLOBALS['username'];
+       } // END - if
+
+       // Return it
+       return $username;
 }
 
 // Wrapper function for installation phase
@@ -711,6 +740,7 @@ function getPhpCaching () {
 
 // Checks wether the admin hash is set
 function isAdminHashSet ($admin) {
+       if (!isset($GLOBALS['cache_array']['admin'])) debug_report_bug('Cache not set.');
        return isset($GLOBALS['cache_array']['admin']['password'][$admin]);
 }
 
@@ -758,7 +788,6 @@ function isUserDataValid () {
 
 // Setter for current userid
 function setCurrentUserId ($userid) {
-       logDebugMessage(__FUNCTION__, __LINE__, 'userid='.$userid);
        $GLOBALS['current_userid'] = bigintval($userid);
 }