]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/cache_functions.php
Fixes for #113, task texts where too much secured, resolved
[mailer.git] / inc / libs / cache_functions.php
index f8ff4882a08ba678ded9c0534aeee39f77d8d53f..afae515b3e16625c145946b9e7b1c266575102a1 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Funktionen fuer die admins-Erweiterung           *
  * -------------------------------------------------------------------- *
- * $Revision:: 856                                                    $ *
- * $Date:: 2009-03-06 20:24:32 +0100 (Fr, 06. Mär 2009)              $ *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
- * $Author:: stelzi                                                   $ *
+ * $Author::                                                          $ *
  * Needs to be in all Files and every File needs "svn propset           *
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
@@ -64,7 +64,7 @@ class CacheSystem {
                $this->path = $path;
 
                // Check if path exists
-               if ((is_dir($path)) && (!$tested)) {
+               if ((isDirectory($path)) && (!$tested)) {
                        // Check if we can create a file inside the path
                        touch($path."dummy.tmp", 'w');
                        if (FILE_READABLE($path."dummy.tmp")) {
@@ -113,7 +113,7 @@ class CacheSystem {
                if ($this->ret == "done") {
                        // Create file
                        if ($this->isCacheReadable()) chmod($this->fqfn, 0666);
-                       $this->pointer = fopen($this->fqfn, 'w') or mxchange_die("Cannot write to cache ".$this->fqfn." !");
+                       $this->pointer = fopen($this->fqfn, 'w') or app_die(__METHOD__, __LINE__, "Cannot write to cache ".$this->fqfn." !");
 
                        // Add open PHP tag
                        fwrite($this->pointer, "<?php\n");
@@ -413,16 +413,18 @@ class CacheSystem {
        function isCacheReadable () {
                return INCLUDE_READABLE($this->inc);
        }
+
 } // END - class
 
 // Destroy the cache on extension changes
 function FILTER_CACHE_DESTROY_ON_EXT_CHANGE ($data) {
+       // Return the data anyway if there is no cache extension
+       if (!isCacheInstanceValid()) return $data;
+
        // Remove cache
-       if (EXT_IS_ACTIVE("cache")) {
-               if ($GLOBALS['cache_instance']->loadCacheFile("config"))     $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("extensions")) $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("modreg"))     $GLOBALS['cache_instance']->destroyCacheFile();
-       } // END - if
+       if ($GLOBALS['cache_instance']->loadCacheFile("config"))     $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("extensions")) $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("modreg"))     $GLOBALS['cache_instance']->destroyCacheFile();
 
        // Return it
        return $data;
@@ -430,26 +432,28 @@ function FILTER_CACHE_DESTROY_ON_EXT_CHANGE ($data) {
 
 // Destroy the cache on changing admin
 function FILTER_CACHE_DESTROY_ON_ADMIN_CHANGE () {
+       // Skip this step if the cache instance is not there
+       if (!isCacheInstanceValid()) return false;
+
        // Remove cache
-       if (EXT_IS_ACTIVE("cache")) {
-               if ($GLOBALS['cache_instance']->loadCacheFile("admins")) $GLOBALS['cache_instance']->destroyCacheFile();
-       } // END - if
+       if ($GLOBALS['cache_instance']->loadCacheFile("admins")) $GLOBALS['cache_instance']->destroyCacheFile();
 }
 
 // Destroy all cache files
 function FILTER_CACHE_DESTROY_ALL () {
-       // Remove cache
-       if (EXT_IS_ACTIVE("cache")) {
-               if ($GLOBALS['cache_instance']->loadCacheFile("admins"))      $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("admins_acls")) $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("config"))      $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("extensions"))  $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("modreg"))      $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("refdepths"))   $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("refsystem"))   $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("themes"))      $GLOBALS['cache_instance']->destroyCacheFile();
-               if ($GLOBALS['cache_instance']->loadCacheFile("revision"))    $GLOBALS['cache_instance']->destroyCacheFile();
-       } // END - if
+       // Skip this step if the cache instance is not there
+       if (!isCacheInstanceValid()) return false;
+
+       // Remove cache files
+       if ($GLOBALS['cache_instance']->loadCacheFile("admins"))      $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("admins_acls")) $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("config"))      $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("extensions"))  $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("modreg"))      $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("refdepths"))   $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("refsystem"))   $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("themes"))      $GLOBALS['cache_instance']->destroyCacheFile();
+       if ($GLOBALS['cache_instance']->loadCacheFile("revision"))    $GLOBALS['cache_instance']->destroyCacheFile();
 }
 
 // Filter for purging entire admin menu cache