Index: branches/5.2.x/core/admin_templates/tools/compile_complete.tpl =================================================================== diff -u -N -r14244 -r15420 --- branches/5.2.x/core/admin_templates/tools/compile_complete.tpl (.../compile_complete.tpl) (revision 14244) +++ branches/5.2.x/core/admin_templates/tools/compile_complete.tpl (.../compile_complete.tpl) (revision 15420) @@ -41,7 +41,13 @@ - + + + : + + + + Index: branches/5.2.x/core/units/admin/admin_tag_processor.php =================================================================== diff -u -N -r15419 -r15420 --- branches/5.2.x/core/units/admin/admin_tag_processor.php (.../admin_tag_processor.php) (revision 15419) +++ branches/5.2.x/core/units/admin/admin_tag_processor.php (.../admin_tag_processor.php) (revision 15420) @@ -1,6 +1,6 @@ Application->ParseBlock($block_params); } @@ -875,6 +875,18 @@ return count( unserialize($errors) ); } + /** + * Detects if given exception isn't one caused by tag error + * + * @param Array $params + * @return string + * @access protected + */ + protected function IsParserException($params) + { + return mb_strtolower($params['class']) == 'parserexception'; + } + function ExportData($params) { $export_helper = $this->Application->recallObject('CSVHelper'); Index: branches/5.2.x/core/kernel/nparser/compiler.php =================================================================== diff -u -N -r14698 -r15420 --- branches/5.2.x/core/kernel/nparser/compiler.php (.../compiler.php) (revision 14698) +++ branches/5.2.x/core/kernel/nparser/compiler.php (.../compiler.php) (revision 15420) @@ -1,6 +1,6 @@ Application->Parser->CheckTemplate($a_template['module'] . '/' . $a_template['path']); - } catch ( ParserException $e ) { - $this->Errors[] = Array ('msg' => $e->getMessage(), 'file' => $e->getFile(), 'line' => $e->getLine()); + } catch ( Exception $e ) { + $this->Errors[] = Array ('message' => $e->getMessage(), 'exception_class' => get_class($e), 'file' => $e->getFile(), 'line' => $e->getLine()); } $i++; Index: branches/5.2.x/core/kernel/utility/factory.php =================================================================== diff -u -N -r15137 -r15420 --- branches/5.2.x/core/kernel/utility/factory.php (.../factory.php) (revision 15137) +++ branches/5.2.x/core/kernel/utility/factory.php (.../factory.php) (revision 15420) @@ -1,6 +1,6 @@ Files[$class_name]) ) { - throw new Exception('File ' . FULL_PATH . $this->Files[$class_name] . ' containing class ' . $class_name . ' definition not found'); + throw new kFactoryException('File ' . FULL_PATH . $this->Files[$class_name] . ' containing class ' . $class_name . ' definition not found'); } kUtil::includeOnce(FULL_PATH . $this->Files[$class_name]); @@ -141,6 +141,7 @@ * @param Array $arguments * @return kBase * @access public + * @throws kFactoryException */ public function getObject($name, $pseudo_class = '', $event_params = Array (), $arguments = Array ()) { @@ -160,7 +161,7 @@ $error_msg = 'RealClass not defined for pseudo_class ' . $pseudo_class . ''; if ( $this->Application->isInstalled() ) { - throw new Exception($error_msg); + throw new kFactoryException($error_msg); } else { if ( $this->Application->isDebugMode() ) { @@ -287,4 +288,9 @@ { unset($this->Files[$real_class]); } +} + + +class kFactoryException extends Exception { + } \ No newline at end of file