* svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
* -------------------------------------------------------------------- *
* Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team *
* For more information visit: http://www.mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
// Rewrite module cache
$modArray = $GLOBALS['cache_array']['modules'];
+
+ // Do only process valid arrays
+ if (!isset($modArray['module'])) {
+ // We should fix this!
+ debug_report_bug(__FILE__, __LINE__, 'modArray=<pre>'.print_r($modArray, true).'</pre>');
+ } // END - if
+
+ // Rewrite some parts
foreach ($modArray['module'] as $key => $mod) {
- $GLOBALS['cache_array']['modules']['id'][$mod] = $modArray['id'][$key];
- unset($GLOBALS['cache_array']['modules']['id'][$key]);
- $GLOBALS['cache_array']['modules']['title'][$mod] = $modArray['title'][$key];
- unset($GLOBALS['cache_array']['modules']['title'][$key]);
- $GLOBALS['cache_array']['modules']['locked'][$mod] = $modArray['locked'][$key];
- unset($GLOBALS['cache_array']['modules']['locked'][$key]);
- $GLOBALS['cache_array']['modules']['hidden'][$mod] = $modArray['hidden'][$key];
- unset($GLOBALS['cache_array']['modules']['hidden'][$key]);
- $GLOBALS['cache_array']['modules']['admin_only'][$mod] = $modArray['admin_only'][$key];
- unset($GLOBALS['cache_array']['modules']['admin_only'][$key]);
- $GLOBALS['cache_array']['modules']['mem_only'][$mod] = $modArray['mem_only'][$key];
- unset($GLOBALS['cache_array']['modules']['mem_only'][$key]);
- if (isset($GLOBALS['cache_array']['modules']['has_menu'][$key])) {
- $GLOBALS['cache_array']['modules']['has_menu'][$mod] = $modArray['has_menu'][$key];
- unset($GLOBALS['cache_array']['modules']['has_menu'][$key]);
+ // Default without sql_patches
+ $entries = array('id','title','locked','hidden','admin_only','mem_only');
+
+ // Is ext-sql_patches newer or equal 0.3.6?
+ if ((isExtensionInstalled('sql_patches')) && (getExtensionVersion('sql_patches') >= '0.3.6')) {
+ // Add 'has_menu'
+ $entries[] = 'has_menu';
} // END - if
+
+ // Add all
+ foreach ($entries as $entry) {
+ // Is the entry set?
+ if (isset($GLOBALS['cache_array']['modules'][$entry][$key])) {
+ // Transfer it
+ $GLOBALS['cache_array']['modules'][$entry][$mod] = $modArray[$entry][$key];
+
+ // And delete cache
+ unset($GLOBALS['cache_array']['modules'][$entry][$key]);
+ } else {
+ // Log this for debug purposes
+ logDebugMessage(basename(__FILE__), __LINE__, 'Entry not found. module=' . $mod . ',key=' . $key . ',entry=' . $entry);
+ }
+ } // END - foreach
} // END - foreach
unset($modArray);
} elseif (getOutputMode() != 1) {