compiler = $compiler; // check and get attributes $_attr = $this->_get_attributes($args); // nocache option if ($_attr['nocache'] === true) { $this->compiler->tag_nocache = true; } // filter handling if ($_attr['nofilter'] === true) { $_filter = 'false'; } else { $_filter = 'true'; } // compiled output // compiled output if (isset($_attr['assign'])) { // assign output to variable $output = "assign({$_attr['assign']},{$parameter['value']});?>"; } else { // display value if (!$_attr['nofilter'] && isset($this->compiler->smarty->registered_filters['variable'])) { $output = "Smarty_Internal_Filter_Handler::runFilter('variable', {$parameter['value']}, \$_smarty_tpl, {$_filter})"; } else { $output = $parameter['value']; } if (!$_attr['nofilter'] && !empty($this->compiler->smarty->default_modifiers)) { $modifierlist = array(); foreach ($this->compiler->smarty->default_modifiers as $key => $single_default_modifier) { preg_match_all('/(\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\'|"[^"\\\\]*(?:\\\\.[^"\\\\]*)*"|:|[^:]+)/', $single_default_modifier, $mod_array); for ($i = 0, $count = count($mod_array[0]);$i < $count;$i++) { if ($mod_array[0][$i] != ':') { $modifierlist[$key][] = $mod_array[0][$i]; } } } $output = $this->compiler->compileTag('private_modifier', array(), array('modifierlist' => $modifierlist, 'value' => $output)); } if (!empty($parameter['modifierlist'])) { $output = $this->compiler->compileTag('private_modifier', array(), array('modifierlist' => $parameter['modifierlist'], 'value' => $output)); } $this->compiler->has_output = true; $output = ""; } return $output; } } ?>