]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/cache_functions.php
More misc fixes and rewrites (sorry, lame description)
[mailer.git] / inc / libs / cache_functions.php
index ca0aee8331aebeb06611e7661d97b930e790755e..a34313d1eb37053b5b06f6e32856b185d86909ad 100644 (file)
@@ -226,13 +226,13 @@ class CacheSystem {
        }
 
        // Destroy an existing cache file
        }
 
        // Destroy an existing cache file
-       function destroyCacheFile ($removeArray = false) {
+       function destroyCacheFile ($removeArray = false, $force = false) {
                // Only run in regular output mode
                // Only run in regular output mode
-               if (getOutputMode() != 0) {
+               if ((getOutputMode() != 0) && ($force === false)) {
                        // Debug message if allowed
                        if (isDebugModeEnabled()) {
                                // Debug message
                        // 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
                        } // 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
 // 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
        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);
        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
 }
 
 // Filter for purging entire admin menu cache