From c1849d27a96d4e533e130ba1ae302c1ef81a3bf3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Tue, 6 Sep 2016 12:04:36 +0200 Subject: [PATCH] Continued a bit: - added checks if pool is initialized, better than ending up in PHP warnings/errors - renamed variables --- inc/inc-functions.php | 90 ++++++++++++++++++++++++------------------- 1 file changed, 51 insertions(+), 39 deletions(-) diff --git a/inc/inc-functions.php b/inc/inc-functions.php index fca27c471c..b5bfdcfa85 100644 --- a/inc/inc-functions.php +++ b/inc/inc-functions.php @@ -36,27 +36,27 @@ if (!defined('__SECURITY')) { } // END - if // Init INC_POOL -function initIncludePool ($pool) { - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, '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: */ logDebugMessage(__FUNCTION__, __LINE__, '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: */ logDebugMessage(__FUNCTION__, __LINE__, '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'][$pool])) { + if (isset($GLOBALS['inc_pool'][$poolName])) { // Return found pool (array) - $poolArray = $GLOBALS['inc_pool'][$pool]; + $poolArray = $GLOBALS['inc_pool'][$poolName]; } // END - if // Return it @@ -64,68 +64,80 @@ function getIncludePool ($pool) { } // Count INC_POOL -function countIncludePool ($pool) { - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, '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: */ logDebugMessage(__FUNCTION__, __LINE__, '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: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool); - array_push($GLOBALS['inc_pool'][$pool], $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: */ logDebugMessage(__FUNCTION__, __LINE__, '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) { // 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: */ logDebugMessage(__FUNCTION__, __LINE__, '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: */ logDebugMessage(__FUNCTION__, __LINE__, '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) { +function loadInclude ($includeFileName) { // Is there cache? - if (!isset($GLOBALS['inc_loaded'][$inc])) { + if (!isset($GLOBALS['inc_loaded'][$includeFileName])) { // Is the include file there? - if (!isIncludeReadable($inc)) { + if (!isIncludeReadable($includeFileName)) { // Not there so log it - reportBug(__FUNCTION__, __LINE__, sprintf('Include file %s not found or deprecated.', $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'][$inc] = getPath() . $inc; + $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 @@ -142,10 +154,10 @@ function isIncludeReadable ($inc) { // Is there cache? if (!isset($GLOBALS['inc_readable'][$inc])) { // Construct FQFN - $FQFN = getPath() . $inc; + $fqfn = getPath() . $inc; // 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)); + $GLOBALS['inc_readable'][$inc] = ((isFileReadable($fqfn)) && (filesize($fqfn) >= 50)); } // END - if // Return result -- 2.39.5