Index: branches/5.2.x/core/kernel/application.php =================================================================== diff -u -N -r14714 -r14787 --- branches/5.2.x/core/kernel/application.php (.../application.php) (revision 14714) +++ branches/5.2.x/core/kernel/application.php (.../application.php) (revision 14787) @@ -1,6 +1,6 @@ UnitConfigReader =& $this->makeClass('kUnitConfigReader'); - $this->UnitConfigReader->scanModules(MODULES_PATH); + $this->UnitConfigReader->scanModules(MODULES_PATH); // will also set RewriteListeners when existing cache is read $this->registerModuleConstants(); @@ -325,7 +325,7 @@ // start processing request $this->HttpQuery =& $this->recallObject('HTTPQuery'); - $this->HttpQuery->AfterInit(); + $this->HttpQuery->AfterInit(); // TODO: only uses build-in rewrite listeners, when cache is build for the first time if ( defined('DEBUG_MODE') && $this->isDebugMode() ) { $this->Debugger->appendTimestamp('Processed HTTPQuery initial'); @@ -339,7 +339,7 @@ $this->UrlManager->LoadStructureTemplateMapping(); - $this->Session->ValidateExpired(); + $this->Session->ValidateExpired(); // needs mod_rewrite url already parsed to keep user at proper template after session expiration if ( defined('DEBUG_MODE') && $this->isDebugMode() ) { $this->Debugger->appendTimestamp('Processed HTTPQuery AfterInit'); @@ -359,7 +359,7 @@ $this->ValidateLogin(); // must be called before AfterConfigRead, because current user should be available there - $this->UnitConfigReader->AfterConfigRead(); + $this->UnitConfigReader->AfterConfigRead(); // will set RewriteListeners when missing cache is built first time if ( defined('DEBUG_MODE') && $this->isDebugMode() ) { $this->Debugger->appendTimestamp('Processed AfterConfigRead'); @@ -2725,12 +2725,29 @@ return $this->ModuleInfo['Core']['RootCat']; } - function DeleteUnitCache($include_sections = false) + /** + * Deletes all data, that was cached during unit config parsing (excluding unit config locations) + * + * @param Array $config_variables + * @access public + */ + public function DeleteUnitCache($config_variables = null) { - $this->cacheManager->DeleteUnitCache($include_sections); + $this->cacheManager->DeleteUnitCache($config_variables); } /** + * Deletes cached section tree, used during permission checking and admin console tree display + * + * @return void + * @access public + */ + public function DeleteSectionCache() + { + $this->cacheManager->DeleteSectionCache(); + } + + /** * Sets data from cache to object * * @param Array $data