Index: trunk/core/kernel/processors/tag_processor.php =================================================================== diff -u -r932 -r1339 --- trunk/core/kernel/processors/tag_processor.php (.../tag_processor.php) (revision 932) +++ trunk/core/kernel/processors/tag_processor.php (.../tag_processor.php) (revision 1339) @@ -19,10 +19,45 @@ } else { + if ($this->Application->hasObject('TagsAggregator')) { + $aggregator = $this->Application->recallObject('TagsAggregator'); + $tag_mapping = $aggregator->GetArrayValue($tag->Prefix, $Method); + if ($tag_mapping) { + + $mapped_tag =& new MyTag('', $this->Application->Parser); + $mapped_tag->CopyFrom($tag); + $mapped_tag->Processor = $tag_mapping[0]; + $mapped_tag->Tag = $tag_mapping[1]; + $mapped_tag->NP['PrefixSpecial'] = $tag->getPrefixSpecial(); + $mapped_tag->RebuildTagData(); + return $mapped_tag->DoProcessTag(); + } + } $this->Application->trigerError('Tag Undefined:
'.$tag->RebuildTagData().''); return false; } } + + function ProcessParsedTag($tag, $params) + { + $Method=$tag; + if(method_exists($this, $Method)) + { + if( $this->Application->isDebugMode() && dbg_ConstOn('DBG_SHOW_TAGS') ) + { + global $debugger; + $debugger->appendHTML('Processing PreParsed Tag '.$Method.' in '.$this->Prefix); + } + + //echo htmlspecialchars($tag->GetFullTag()).'
'; + return $this->$Method($params); + } + else + { + $this->Application->trigerError('Tag Undefined:
'.$tag.''); + return false; + } + } } /*class ProcessorsPool {