]> git.mxchange.org Git - mailer.git/blobdiff - inc/inc-functions.php
Continued a bit:
[mailer.git] / inc / inc-functions.php
index 2534856c2c757d7cc51a76c5d89ade3138d4d11f..b5bfdcfa85c266016217120154367a44d84b0376 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Spezielle Funktionen fuer Include-Dateien        *
  * -------------------------------------------------------------------- *
- * $Revision::                                                        $ *
- * $Date::                                                            $ *
- * $Tag:: 0.2.1-FINAL                                                 $ *
- * $Author::                                                          $ *
- * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
+ * Copyright (c) 2009 - 2016 by Mailer Developer Team                   *
  * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -41,115 +36,128 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Init INC_POOL
-function initIncludePool ($pool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       $GLOBALS['inc_pool'][$pool] = array();
+function initIncludePool ($poolName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolName=' . $poolName);
+       $GLOBALS['inc_pool'][$poolName] = array();
 }
 
 // Setter for INC_POOL
-function setIncludePool ($pool, $includePool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       $GLOBALS['inc_pool'][$pool] = (array) $includePool;
+function setIncludePool ($poolName, $includePool) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolName=' . $poolName);
+       $GLOBALS['inc_pool'][$poolName] = (array) $includePool;
 }
 
 // Getter for INC_POOL
-function getIncludePool ($pool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       if (isset($GLOBALS['inc_pool'][$pool])) {
+function getIncludePool ($poolName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolName=' . $poolName);
+       // Default is empty pool
+       $poolArray = array();
+
+       // Is it set?
+       if (isset($GLOBALS['inc_pool'][$poolName])) {
                // Return found pool (array)
-               return $GLOBALS['inc_pool'][$pool];
-       } else {
-               // Return empty array if not found
-               return array();
-       }
+               $poolArray = $GLOBALS['inc_pool'][$poolName];
+       } // END - if
+
+       // Return it
+       return $poolArray;
 }
 
 // Count INC_POOL
-function countIncludePool ($pool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       return count($GLOBALS['inc_pool'][$pool]);
+function countIncludePool ($poolNAme) {
+       // Is the pool initialized?
+       if (!isset($GLOBALS['inc_pool'][$poolNAme])) {
+               // Not initialized with initIncludePool()
+               reportBug(__FUNCTION__, __LINE__, sprintf("Pool %s is not initialized.", $poolNAme));
+       } // END - if
+
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme);
+       return count($GLOBALS['inc_pool'][$poolNAme]);
 }
 
 // Merge INC_POOL into given
-function mergeIncludePool ($pool, $includePool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       setIncludePool($pool, merge_array(getIncludePool($pool), $includePool));
+function mergeIncludePool ($poolName, $includeArray) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme);
+       setIncludePool($poolName, merge_array(getIncludePool($poolName), $includeArray));
 }
 
 // Add single include file to INC_POOL
-function addIncludeToPool ($pool, $inc) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
-       $GLOBALS['inc_pool'][$pool][] = (string) $inc;
+function addIncludeToPool ($poolName, $includeFileName) {
+       // Is the pool initialized?
+       if (!isset($GLOBALS['inc_pool'][$poolName])) {
+               // Not initialized with initIncludePool()
+               reportBug(__FUNCTION__, __LINE__, sprintf("Pool %s is not initialized, not adding include %s.", $poolName, $includeFileName));
+       } // END - if
+
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme);
+       array_push($GLOBALS['inc_pool'][$poolName], $includeFileName);
 }
 
 // Remove an include file from INC_POOL
-function removeIncludeFromPool ($pool, $inc) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+function removeIncludeFromPool ($poolNAme, $inc) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme);
        // First look it up
-       $key = array_search($inc, getIncludePool($pool));
+       $key = array_search($inc, getIncludePool($poolNAme));
 
        // Is it valid?
-       if ($key !== false) {
+       if ($key !== FALSE) {
                // Then remove it
-               unset($GLOBALS['inc_pool'][$pool][$key]);
+               unset($GLOBALS['inc_pool'][$poolNAme][$key]);
 
                // And sort the list
-               asort($GLOBALS['inc_pool'][$pool]);
+               asort($GLOBALS['inc_pool'][$poolNAme]);
        } // END - if
 }
 
 // Load the whole include pool
-function loadIncludePool ($pool) {
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool.' - START');
-       foreach (getIncludePool($pool) as $inc) {
-               //* DEBUG: */ debugOutput(__FUNCTION__.':inc='.$inc);
-               loadIncludeOnce($inc);
+function loadIncludePool ($poolName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme.' - START');
+       foreach (getIncludePool($poolName) as $includeFileName) {
+               //* DEBUG: */ debugOutput(__FUNCTION__.':includeFileName='.$includeFileName);
+               loadIncludeOnce($includeFileName);
        } // END - foreach
-       //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool.' - END');
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'poolNAme=' . $poolNAme.' - END');
 
        // Remove it
-       initIncludePool($pool);
+       initIncludePool($poolName);
 }
 
 // Loads an include file and logs any missing files for debug purposes
-function loadInclude ($inc) {
-       // Do we have cache?
-       if (!isset($GLOBALS['inc_loaded'][$inc])) {
-               // Add the path. This is why we need a trailing slash in config.php
-               $GLOBALS['inc_loaded'][$inc] = getPath() . $inc;
-
+function loadInclude ($includeFileName) {
+       // Is there cache?
+       if (!isset($GLOBALS['inc_loaded'][$includeFileName])) {
                // Is the include file there?
-               if (!isIncludeReadable($inc)) {
+               if (!isIncludeReadable($includeFileName)) {
                        // Not there so log it
-                       debug_report_bug(__FUNCTION__, __LINE__, sprintf("Include file %s not found.", $inc));
+                       reportBug(__FUNCTION__, __LINE__, sprintf('Include file %s not found or deprecated.', $includeFileName));
                } // END - if
+
+               // Add the path. This is why we need a trailing slash in config.php
+               $GLOBALS['inc_loaded'][$includeFileName] = getPath() . $includeFileName;
        } // END - if
 
        // Try to load it
-       include($GLOBALS['inc_loaded'][$inc]);
+       include($GLOBALS['inc_loaded'][$includeFileName]);
 }
 
 // Loads an include file once
 function loadIncludeOnce ($inc) {
        // Is it not loaded?
-       if (!isset($GLOBALS['load_once'][$inc])) {
-               // Mark it as loaded
-               $GLOBALS['load_once'][$inc] = 'loaded';
-
+       if (!isset($GLOBALS['inc_loaded'][$inc])) {
                // Then try to load it
                loadInclude($inc);
        } // END - if
 }
 
-// Checks wether an include file (non-FQFN better) is readable
+// Checks whether an include file (non-FQFN better) is readable
 function isIncludeReadable ($inc) {
-       // Do we have cache?
+       // Is there cache?
        if (!isset($GLOBALS['inc_readable'][$inc])) {
                // Construct FQFN
-               $FQFN = getPath() . $inc;
+               $fqfn = getPath() . $inc;
 
-               // Is it readable?
-               $GLOBALS['inc_readable'][$inc] = isFileReadable($FQFN);
+               // Is it readable and at least 50 byte large? Include file sizes < 50 byte are always deprecated
+               $GLOBALS['inc_readable'][$inc] = ((isFileReadable($fqfn)) && (filesize($fqfn) >= 50));
        } // END - if
 
        // Return result