Referal overview finished and rewritten for refback extension
[mailer.git] / inc / loader / load_cache-modreg.php
index 8e42ddae4639fb4bcd82ffea4886cfe46598ce9f..ed6797493d6bd3e873241e504632ee60c31e7ca8 100644 (file)
@@ -32,7 +32,7 @@
  ************************************************************************/
 
 // Some security stuff...
-if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
+if (!defined('__SECURITY')) {
        $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
        require($INC);
 }
@@ -43,43 +43,27 @@ if ($cacheInstance->cache_file("mod_reg", true) == true) {
        global $cacheArray;
        $cacheArray['modules'] = $cacheInstance->cache_load();
 
-       // Valid cache file
-       $CNT = 0;
-       foreach ($cacheArray['modules'] as $k => $array) {
-               $CNT += count($array);
-       }
-
-       // When there is a period (.) in the result this test will fail and so the cache file is
-       // damaged/corrupted
-       $TEST = "failed";
-       if (count($cacheArray['modules']) > 0 ) $TEST = ($CNT / (count($cacheArray['modules'])));
-       if ($TEST != bigintval($TEST)) {
-               // Cache file is corrupted!
-               $cacheInstance->cache_destroy();
-               unset($cacheArray['modules']);
-       } else {
-               // Rewrite module cache
-               $modArray = $cacheArray['modules'];
-               foreach ($modArray['module'] as $key => $mod) {
-                       $cacheArray['modules']['id'][$mod] = $modArray['id'][$key];
-                       unset($cacheArray['modules']['id'][$key]);
-                       $cacheArray['modules']['title'][$mod] = $modArray['title'][$key];
-                       unset($cacheArray['modules']['title'][$key]);
-                       $cacheArray['modules']['locked'][$mod] = $modArray['locked'][$key];
-                       unset($cacheArray['modules']['locked'][$key]);
-                       $cacheArray['modules']['hidden'][$mod] = $modArray['hidden'][$key];
-                       unset($cacheArray['modules']['hidden'][$key]);
-                       $cacheArray['modules']['admin_only'][$mod] = $modArray['admin_only'][$key];
-                       unset($cacheArray['modules']['admin_only'][$key]);
-                       $cacheArray['modules']['mem_only'][$mod] = $modArray['mem_only'][$key];
-                       unset($cacheArray['modules']['mem_only'][$key]);
-                       if (isset($cacheArray['modules']['has_menu'][$key])) {
-                               $cacheArray['modules']['has_menu'][$mod] = $modArray['has_menu'][$key];
-                               unset($cacheArray['modules']['has_menu'][$key]);
-                       } // END - if
-               }
-               unset($modArray);
-       }
+       // Rewrite module cache
+       $modArray = $cacheArray['modules'];
+       foreach ($modArray['module'] as $key => $mod) {
+               $cacheArray['modules']['id'][$mod] = $modArray['id'][$key];
+               unset($cacheArray['modules']['id'][$key]);
+               $cacheArray['modules']['title'][$mod] = $modArray['title'][$key];
+               unset($cacheArray['modules']['title'][$key]);
+               $cacheArray['modules']['locked'][$mod] = $modArray['locked'][$key];
+               unset($cacheArray['modules']['locked'][$key]);
+               $cacheArray['modules']['hidden'][$mod] = $modArray['hidden'][$key];
+               unset($cacheArray['modules']['hidden'][$key]);
+               $cacheArray['modules']['admin_only'][$mod] = $modArray['admin_only'][$key];
+               unset($cacheArray['modules']['admin_only'][$key]);
+               $cacheArray['modules']['mem_only'][$mod] = $modArray['mem_only'][$key];
+               unset($cacheArray['modules']['mem_only'][$key]);
+               if (isset($cacheArray['modules']['has_menu'][$key])) {
+                       $cacheArray['modules']['has_menu'][$mod] = $modArray['has_menu'][$key];
+                       unset($cacheArray['modules']['has_menu'][$key]);
+               } // END - if
+       } // END - foreach
+       unset($modArray);
 } elseif (($_CONFIG['cache_modreg'] == "Y") && ($CSS != "1") && ($CSS != "-1")) {
        // Create cache file here
        $cacheInstance->cache_init("MODULES");
@@ -94,14 +78,19 @@ FROM "._MYSQL_PREFIX."_mod_reg ORDER BY id", __FILE__, __LINE__);
                $result = SQL_QUERY("SELECT id, module, title, locked, hidden, admin_only, title, mem_only
 FROM "._MYSQL_PREFIX."_mod_reg ORDER BY id", __FILE__, __LINE__);
        }
-       while ($DATA = SQL_FETCHARRAY($result)) {
+
+       // Cache all data
+       while ($data = SQL_FETCHARRAY($result)) {
                // Add row to cache file
-               $cacheInstance->add_row($DATA);
-       }
+               $cacheInstance->add_row($data);
+       } // END - while
 
        // Free memory
        SQL_FREERESULT($result);
 
+       // Close the cache
+       $cacheInstance->cache_close();
+
        // Reload the cache
        require(__FILE__);
 }