* -------------------------------------------------------------------- *
* Kurzbeschreibung : Spezielle Funktionen fuer Include-Dateien *
* -------------------------------------------------------------------- *
- * $Revision:: $ *
- * $Date:: $ *
- * $Tag:: 0.2.1-FINAL $ *
- * $Author:: $ *
- * Needs to be in all Files and every File needs "svn propset *
- * 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 *
+ * Copyright (c) 2009 - 2013 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 *
// Init INC_POOL
function initIncludePool ($pool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
$GLOBALS['inc_pool'][$pool] = array();
}
// Setter for INC_POOL
function setIncludePool ($pool, $includePool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
$GLOBALS['inc_pool'][$pool] = (array) $includePool;
}
// Getter for INC_POOL
function getIncludePool ($pool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
+ // Default is empty pool
+ $poolArray = array();
+
+ // Is it set?
if (isset($GLOBALS['inc_pool'][$pool])) {
// Return found pool (array)
- return $GLOBALS['inc_pool'][$pool];
- } else {
- // Return empty array if not found
- return array();
- }
+ $poolArray = $GLOBALS['inc_pool'][$pool];
+ } // END - if
+
+ // Return it
+ return $poolArray;
}
// Count INC_POOL
function countIncludePool ($pool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
return count($GLOBALS['inc_pool'][$pool]);
}
// Merge INC_POOL into given
function mergeIncludePool ($pool, $includePool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
setIncludePool($pool, merge_array(getIncludePool($pool), $includePool));
}
// Add single include file to INC_POOL
function addIncludeToPool ($pool, $inc) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
- $GLOBALS['inc_pool'][$pool][] = (string) $inc;
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
+ array_push($GLOBALS['inc_pool'][$pool], $inc);
}
// Remove an include file from INC_POOL
function removeIncludeFromPool ($pool, $inc) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool);
// First look it up
$key = array_search($inc, getIncludePool($pool));
// Is it valid?
- if ($key !== false) {
+ if ($key !== FALSE) {
// Then remove it
unset($GLOBALS['inc_pool'][$pool][$key]);
// Load the whole include pool
function loadIncludePool ($pool) {
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool.' - START');
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool.' - START');
foreach (getIncludePool($pool) as $inc) {
//* DEBUG: */ debugOutput(__FUNCTION__.':inc='.$inc);
loadIncludeOnce($inc);
} // END - foreach
- //* DEBUG: */ debugOutput(__FUNCTION__.':pool='.$pool.' - END');
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'pool=' . $pool.' - END');
// Remove it
initIncludePool($pool);
// Loads an include file and logs any missing files for debug purposes
function loadInclude ($inc) {
- // Do we have cache?
+ // Is there 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] = getConfig('PATH') . $inc;
-
// Is the include file there?
if (!isIncludeReadable($inc)) {
// 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.', $inc));
} // END - if
+
+ // Add the path. This is why we need a trailing slash in config.php
+ $GLOBALS['inc_loaded'][$inc] = getPath() . $inc;
} // END - if
// Try to load it
// Loads an include file once
function loadIncludeOnce ($inc) {
- // Remove double path
- $inc = str_replace(getConfig('PATH'), '', $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])) {
- // Remove double path
- $inc = str_replace(getConfig('PATH'), '', $inc);
-
// Construct FQFN
- $FQFN = getConfig('PATH') . $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