diff options
author | emkael <emkael@tlen.pl> | 2018-10-18 02:40:38 +0200 |
---|---|---|
committer | emkael <emkael@tlen.pl> | 2018-10-18 02:40:38 +0200 |
commit | eab8a101e7a3fcbb41e01a574985e06c5a3775de (patch) | |
tree | 60f201da5984b0c3638d10da02bba42b61aa3177 /lib/smarty3/sysplugins/smarty_internal_compile_capture.php | |
parent | 7f38be342c1495aeca418286c15c25c18ac9e142 (diff) |
Updating Smarty
Diffstat (limited to 'lib/smarty3/sysplugins/smarty_internal_compile_capture.php')
-rw-r--r-- | lib/smarty3/sysplugins/smarty_internal_compile_capture.php | 39 |
1 files changed, 16 insertions, 23 deletions
diff --git a/lib/smarty3/sysplugins/smarty_internal_compile_capture.php b/lib/smarty3/sysplugins/smarty_internal_compile_capture.php index e43a7c5..a4ffbc9 100644 --- a/lib/smarty3/sysplugins/smarty_internal_compile_capture.php +++ b/lib/smarty3/sysplugins/smarty_internal_compile_capture.php @@ -35,29 +35,27 @@ class Smarty_Internal_Compile_Capture extends Smarty_Internal_CompileBase /** * Compiles code for the {$smarty.capture.xxx} * - * @param array $args array with attributes from parser - * @param \Smarty_Internal_TemplateCompilerBase$compiler compiler object - * @param array $parameter array with compilation parameter + * @param array $args array with attributes from parser + * @param \Smarty_Internal_TemplateCompilerBase $compiler compiler object + * @param array $parameter array with compilation parameter * * @return string compiled code - * @throws \SmartyCompilerException */ - public static function compileSpecialVariable($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter = null) - { - $tag = trim($parameter[ 0 ], '"\''); - $name = isset($parameter[ 1 ]) ? $compiler->getId($parameter[ 1 ]) : false; - if (!$name) { - $compiler->trigger_template_error("missing or illegal \$smarty.{$tag} name attribute", null, true); - } - return "\$_smarty_tpl->smarty->ext->_capture->getBuffer(\$_smarty_tpl, '{$name}')"; + public static function compileSpecialVariable( + $args, + Smarty_Internal_TemplateCompilerBase $compiler, + $parameter = null + ) { + return '$_smarty_tpl->smarty->ext->_capture->getBuffer($_smarty_tpl' . + (isset($parameter[ 1 ]) ? ", {$parameter[ 1 ]})" : ')'); } /** * Compiles code for the {capture} tag * - * @param array $args array with attributes from parser + * @param array $args array with attributes from parser * @param \Smarty_Internal_TemplateCompilerBase $compiler compiler object - * @param null $parameter + * @param null $parameter * * @return string compiled code */ @@ -65,16 +63,13 @@ class Smarty_Internal_Compile_Capture extends Smarty_Internal_CompileBase { // check and get attributes $_attr = $this->getAttributes($compiler, $args, $parameter, 'capture'); - $buffer = isset($_attr[ 'name' ]) ? $_attr[ 'name' ] : "'default'"; $assign = isset($_attr[ 'assign' ]) ? $_attr[ 'assign' ] : 'null'; $append = isset($_attr[ 'append' ]) ? $_attr[ 'append' ] : 'null'; - $compiler->_cache[ 'capture_stack' ][] = array($compiler->nocache); // maybe nocache because of nocache variables $compiler->nocache = $compiler->nocache | $compiler->tag_nocache; - $_output = "<?php \$_smarty_tpl->smarty->ext->_capture->open(\$_smarty_tpl, $buffer, $assign, $append);\n?>\n"; - + $_output = "<?php \$_smarty_tpl->smarty->ext->_capture->open(\$_smarty_tpl, $buffer, $assign, $append);?>"; return $_output; } } @@ -90,9 +85,9 @@ class Smarty_Internal_Compile_CaptureClose extends Smarty_Internal_CompileBase /** * Compiles code for the {/capture} tag * - * @param array $args array with attributes from parser + * @param array $args array with attributes from parser * @param \Smarty_Internal_TemplateCompilerBase $compiler compiler object - * @param null $parameter + * @param null $parameter * * @return string compiled code */ @@ -104,9 +99,7 @@ class Smarty_Internal_Compile_CaptureClose extends Smarty_Internal_CompileBase if ($compiler->nocache) { $compiler->tag_nocache = true; } - list($compiler->nocache) = array_pop($compiler->_cache[ 'capture_stack' ]); - - return "<?php \$_smarty_tpl->smarty->ext->_capture->close(\$_smarty_tpl);\n?>\n"; + return "<?php \$_smarty_tpl->smarty->ext->_capture->close(\$_smarty_tpl);?>"; } } |