Index: branches/RC/core/kernel/utility/unit_config_reader.php =================================================================== diff -u -r10134 -r10334 --- branches/RC/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 10134) +++ branches/RC/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 10334) @@ -235,8 +235,14 @@ // if (!$this->ProcessAllConfigs) return ; $this->FinalStage = true; foreach ($this->configData as $prefix => $config) { - if (in_array($prefix, $this->AfterConfigProcessed)) continue; - $this->Application->HandleEvent( new kEvent($prefix.':OnAfterConfigRead') ); + if (in_array($prefix, $this->AfterConfigProcessed)) { + continue; + } + + $event = new kEvent($prefix.':OnAfterConfigRead'); + $event->setEventParam('top_prefix', $this->Application->GetTopmostPrefix($event->Prefix, true)); + $this->Application->HandleEvent($event); + $this->AfterConfigProcessed[] = $prefix; } @@ -307,8 +313,14 @@ // call OnAfterConfigRead for cloned configs $new_clones = array_unique($new_clones); foreach ($new_clones as $prefix) { - if (in_array($prefix, $this->AfterConfigProcessed)) continue; - $this->Application->HandleEvent( new kEvent($prefix.':OnAfterConfigRead') ); + if (in_array($prefix, $this->AfterConfigProcessed)) { + continue; + } + + $event = new kEvent($prefix.':OnAfterConfigRead'); + $event->setEventParam('top_prefix', $this->Application->GetTopmostPrefix($event->Prefix, true)); + $this->Application->HandleEvent($event); + $this->AfterConfigProcessed[] = $prefix; } } @@ -653,7 +665,9 @@ array_unshift($clones, $prefix); $clones = array_unique($clones); foreach ($clones as $a_prefix) { - $this->Application->HandleEvent( new kEvent($a_prefix.':OnAfterConfigRead') ); + $event = new kEvent($a_prefix.':OnAfterConfigRead'); + $event->setEventParam('top_prefix', $this->Application->GetTopmostPrefix($event->Prefix, true)); + $this->Application->HandleEvent($event); } } }