_plugin_exists($function, "block")) { if ($start_tag) { $_args = $object->_parse_arguments($arguments); foreach($_args as $key => $value) { if (is_bool($value)) { $value = $value ? 'true' : 'false'; } elseif (is_null($value)) { $value = 'null'; } elseif ($value[0] != '$') { $value = '"'.addslashes($value).'"'; } $_args[$key] = "'$key' => $value"; } $_result = "_tag_stack[] = array('$function', array(".implode(',', (array)$_args).")); "; $_result .= $function . '(array(' . implode(',', (array)$_args) .'), null, $this); '; $_result .= 'ob_start(); ?>'; } else { $_result .= '_block_content = ob_get_contents(); ob_end_clean(); '; $_result .= '$this->_block_content = ' . $function . '($this->_tag_stack[count($this->_tag_stack) - 1][1], $this->_block_content, $this); '; if (!empty($modifiers)) { $_result .= '$this->_block_content = ' . $object->_parse_modifier('$this->_block_content', $modifiers) . '; '; } $_result .= 'echo $this->_block_content; array_pop($this->_tag_stack); ?>'; } return true; } else { return false; } } ?>