Index: trunk/core/kernel/utility/factory.php =================================================================== diff -u -r2540 -r2543 --- trunk/core/kernel/utility/factory.php (.../factory.php) (revision 2540) +++ trunk/core/kernel/utility/factory.php (.../factory.php) (revision 2543) @@ -30,6 +30,11 @@ */ var $realClasses=Array(); + /** + * class name vs other classnames it's require for existing + * + * @var Array + */ var $Dependencies=Array(); /** @@ -137,7 +142,11 @@ if( $deps = getArrayValue($this->Dependencies, $real_class) ) { - foreach($deps as $filename) k4_include_once($filename); + foreach($deps as $dep_class_name) + { + $filename = $this->getFileByClassName($dep_class_name); + k4_include_once($filename); + } } k4_include_once($this->Files[$real_class]); @@ -203,9 +212,14 @@ if( getArrayValue($this->realClasses, $pseudo_class) ) { - $this->Dependencies[$real_class][] = $this->Files[ $this->realClasses[$pseudo_class] ]; + $this->Dependencies[$real_class][] = $this->realClasses[$pseudo_class]; //$this->Files[ $this->realClasses[$pseudo_class] ]; } + if($pseudo_class == 'kCatDBEventHandler') + { + echo ''; // TODO: fix that LinksEventHandler got ProductsEventHandler as it's pseudo_class :) + } + $this->realClasses[$pseudo_class]=$real_class; }