X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Floader%2Fload_cache-modreg.php;h=ed6797493d6bd3e873241e504632ee60c31e7ca8;hb=d798a412acb8c1263933bd7f7a0fd9aa251495a7;hp=8e42ddae4639fb4bcd82ffea4886cfe46598ce9f;hpb=41e2891fb998d13b22b8d7984358f258cc85267d;p=mailer.git diff --git a/inc/loader/load_cache-modreg.php b/inc/loader/load_cache-modreg.php index 8e42ddae46..ed6797493d 100644 --- a/inc/loader/load_cache-modreg.php +++ b/inc/loader/load_cache-modreg.php @@ -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__); }