X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Flibs%2Fcache_functions.php;h=a34313d1eb37053b5b06f6e32856b185d86909ad;hp=ca0aee8331aebeb06611e7661d97b930e790755e;hb=f928ad2bed60fa256d0641eaf6d2c027a2944688;hpb=06a24901c58897845bafc1e5b428fee99024bc64 diff --git a/inc/libs/cache_functions.php b/inc/libs/cache_functions.php index ca0aee8331..a34313d1eb 100644 --- a/inc/libs/cache_functions.php +++ b/inc/libs/cache_functions.php @@ -226,13 +226,13 @@ class CacheSystem { } // Destroy an existing cache file - function destroyCacheFile ($removeArray = false) { + function destroyCacheFile ($removeArray = false, $force = false) { // Only run in regular output mode - if (getOutputMode() != 0) { + if ((getOutputMode() != 0) && ($force === false)) { // Debug message if allowed if (isDebugModeEnabled()) { // Debug message - DEBUG_LOG(__METHOD__, __LINE__, 'Not removing cache ' . $this->name . ' in output_mode=' . getOutputMode()); + debug_report_bug('Not removing cache ' . $this->name . ' in output_mode=' . getOutputMode()); } // END - if // Abort here @@ -477,7 +477,7 @@ function FILTER_CACHE_DESTROY_ON_ADMIN_CHANGE () { // Destroy all cache files function FILTER_CACHE_DESTROY_ALL () { // Skip this step if the cache instance is not there - DEBUG_LOG(__FUNCTION__, __LINE__, 'Called!'); + //* DEBUG: */ DEBUG_LOG(__FUNCTION__, __LINE__, 'Called!'); if (!isCacheInstanceValid()) return false; // Remove cache files @@ -490,7 +490,17 @@ function FILTER_CACHE_DESTROY_ALL () { if ($GLOBALS['cache_instance']->loadCacheFile('refsystem')) $GLOBALS['cache_instance']->destroyCacheFile(false); if ($GLOBALS['cache_instance']->loadCacheFile('themes')) $GLOBALS['cache_instance']->destroyCacheFile(false); if ($GLOBALS['cache_instance']->loadCacheFile('revision')) $GLOBALS['cache_instance']->destroyCacheFile(false); - DEBUG_LOG(__FUNCTION__, __LINE__, 'Done!'); + if ($GLOBALS['cache_instance']->loadCacheFile('filter')) $GLOBALS['cache_instance']->destroyCacheFile(false); + //* DEBUG: */ DEBUG_LOG(__FUNCTION__, __LINE__, 'Done!'); +} + +// Filter for purging 'filter' cache +function FILTER_CACHE_DESTROY_FILTER () { + // Skip this step if the cache instance is not there + if ((!isCacheInstanceValid()) || (getConfig('update_filter_usage') == 'N')) return false; + + // Remove cache files + if ($GLOBALS['cache_instance']->loadCacheFile('filter')) $GLOBALS['cache_instance']->destroyCacheFile(false); } // Filter for purging entire admin menu cache