diff --git a/library/smarty/libs/sysplugins/smarty_internal_parsetree_tag.php b/library/smarty/libs/sysplugins/smarty_internal_parsetree_tag.php new file mode 100644 --- /dev/null +++ b/library/smarty/libs/sysplugins/smarty_internal_parsetree_tag.php @@ -0,0 +1,62 @@ +parser = $parser; + $this->data = $data; + $this->saved_block_nesting = $parser->block_nesting_level; + } + + /** + * Return buffer content + * + * @return string content + */ + public function to_smarty_php() { + return $this->data; + } + + /** + * Return complied code that loads the evaluated output of buffer content into a temporary variable + * + * @return string template code + */ + public function assign_to_var() { + $var = sprintf('$_tmp%d', ++Smarty_Internal_Templateparser::$prefix_number); + $tmp = $this->parser->compiler->appendCode('', $this->data); + $tmp = $this->parser->compiler->appendCode($tmp, ""); + $this->parser->compiler->prefix_code[] = sprintf("%s", $tmp); + + return $var; + } +}