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_continue.php | |
parent | 7f38be342c1495aeca418286c15c25c18ac9e142 (diff) |
Updating Smarty
Diffstat (limited to 'lib/smarty3/sysplugins/smarty_internal_compile_continue.php')
-rw-r--r-- | lib/smarty3/sysplugins/smarty_internal_compile_continue.php | 60 |
1 files changed, 4 insertions, 56 deletions
diff --git a/lib/smarty3/sysplugins/smarty_internal_compile_continue.php b/lib/smarty3/sysplugins/smarty_internal_compile_continue.php index ac41f41..e545728 100644 --- a/lib/smarty3/sysplugins/smarty_internal_compile_continue.php +++ b/lib/smarty3/sysplugins/smarty_internal_compile_continue.php @@ -14,64 +14,12 @@ * @package Smarty * @subpackage Compiler */ -class Smarty_Internal_Compile_Continue extends Smarty_Internal_CompileBase +class Smarty_Internal_Compile_Continue extends Smarty_Internal_Compile_Break { /** - * Attribute definition: Overwrites base class. + * Tag name * - * @var array - * @see Smarty_Internal_CompileBase + * @var string */ - public $optional_attributes = array('levels'); - - /** - * Attribute definition: Overwrites base class. - * - * @var array - * @see Smarty_Internal_CompileBase - */ - public $shorttag_order = array('levels'); - - /** - * Compiles code for the {continue} tag - * - * @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 function compile($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter) - { - static $_is_loopy = array('for' => true, 'foreach' => true, 'while' => true, 'section' => true); - // check and get attributes - $_attr = $this->getAttributes($compiler, $args); - - if ($_attr[ 'nocache' ] === true) { - $compiler->trigger_template_error('nocache option not allowed', null, true); - } - - if (isset($_attr[ 'levels' ])) { - if (!is_numeric($_attr[ 'levels' ])) { - $compiler->trigger_template_error('level attribute must be a numeric constant', null, true); - } - $_levels = $_attr[ 'levels' ]; - } else { - $_levels = 1; - } - $level_count = $_levels; - $stack_count = count($compiler->_tag_stack) - 1; - while ($level_count > 0 && $stack_count >= 0) { - if (isset($_is_loopy[ $compiler->_tag_stack[ $stack_count ][ 0 ] ])) { - $level_count --; - } - $stack_count --; - } - if ($level_count != 0) { - $compiler->trigger_template_error("cannot continue {$_levels} level(s)", null, true); - } - - return "<?php continue {$_levels};?>"; - } + public $tag = 'continue'; } |