47 $buffer = isset($_attr[
'name']) ? $_attr[
'name'] :
"'default'";
48 $assign = isset($_attr[
'assign']) ? $_attr[
'assign'] :
'null';
49 $append = isset($_attr[
'append']) ? $_attr[
'append'] :
'null';
51 $compiler->_capture_stack[0][] = array($buffer, $assign, $append, $compiler->nocache);
53 $compiler->nocache = $compiler->nocache | $compiler->tag_nocache;
54 $_output =
"<?php \$_smarty_tpl->_capture_stack[0][] = array($buffer, $assign, $append); ob_start(); ?>";
81 if ($compiler->nocache) {
82 $compiler->tag_nocache =
true;
85 list($buffer, $assign, $append, $compiler->nocache) = array_pop($compiler->_capture_stack[0]);
87 $_output =
"<?php list(\$_capture_buffer, \$_capture_assign, \$_capture_append) = array_pop(\$_smarty_tpl->_capture_stack[0]);\n";
88 $_output .=
"if (!empty(\$_capture_buffer)) {\n";
89 $_output .=
" if (isset(\$_capture_assign)) \$_smarty_tpl->assign(\$_capture_assign, ob_get_contents());\n";
90 $_output .=
" if (isset( \$_capture_append)) \$_smarty_tpl->append( \$_capture_append, ob_get_contents());\n";
91 $_output .=
" Smarty::\$_smarty_vars['capture'][\$_capture_buffer]=ob_get_clean();\n";
92 $_output .=
"} else \$_smarty_tpl->capture_error();?>";
compile($args, $compiler)
Compiles code for the {capture} tag.
getAttributes($compiler, $attributes)
This function checks if the attributes passed are valid.
compile($args, $compiler)
Compiles code for the {/capture} tag.