Index: branches/5.2.x/core/kernel/nparser/nparser.php =================================================================== diff -u -N -r14585 -r14628 --- branches/5.2.x/core/kernel/nparser/nparser.php (.../nparser.php) (revision 14585) +++ branches/5.2.x/core/kernel/nparser/nparser.php (.../nparser.php) (revision 14628) @@ -1,6 +1,6 @@ Application->recallObject($prefix.'_TagProcessor'); + static $processors = Array (); + + if ( !isset($processors[$prefix]) ) { + $processors[$prefix] = $this->Application->recallObject($prefix . '_TagProcessor'); } - return $Processors[$prefix]; + return $processors[$prefix]; } - function SelectParam($params, $possible_names) + /** + * Not tag. Method for parameter selection from list in this TagProcessor + * + * @param Array $params + * @param Array $possible_names + * + * @return string + * @access protected + */ + protected function SelectParam($params, $possible_names) { - if (!is_array($params)) return; - if (!is_array($possible_names)) + if ( !is_array($params) ) { + return ''; + } - $possible_names = explode(',', $possible_names); - foreach ($possible_names as $name) - { - if( isset($params[$name]) ) return $params[$name]; + if ( !is_array($possible_names) ) { + $possible_names = explode(',', $possible_names); } - return false; + + foreach ($possible_names as $name) { + if ( isset($params[$name]) ) { + return $params[$name]; + } + } + + return ''; } function SetParams($params)