]> git.mxchange.org Git - friendica.git/blob - vendor/smarty/smarty/libs/sysplugins/smarty_internal_compile_setfilter.php
Add Smarty to Composer
[friendica.git] / vendor / smarty / smarty / libs / sysplugins / smarty_internal_compile_setfilter.php
1 <?php
2 /**
3  * Smarty Internal Plugin Compile Setfilter
4  * Compiles code for setfilter tag
5  *
6  * @package    Smarty
7  * @subpackage Compiler
8  * @author     Uwe Tews
9  */
10
11 /**
12  * Smarty Internal Plugin Compile Setfilter Class
13  *
14  * @package    Smarty
15  * @subpackage Compiler
16  */
17 class Smarty_Internal_Compile_Setfilter extends Smarty_Internal_CompileBase
18 {
19     /**
20      * Compiles code for setfilter tag
21      *
22      * @param  array                                $args      array with attributes from parser
23      * @param \Smarty_Internal_TemplateCompilerBase $compiler  compiler object
24      * @param  array                                $parameter array with compilation parameter
25      *
26      * @return string compiled code
27      */
28     public function compile($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter)
29     {
30         $compiler->variable_filter_stack[] = $compiler->variable_filters;
31         $compiler->variable_filters = $parameter[ 'modifier_list' ];
32         // this tag does not return compiled code
33         $compiler->has_code = false;
34
35         return true;
36     }
37 }
38
39 /**
40  * Smarty Internal Plugin Compile Setfilterclose Class
41  *
42  * @package    Smarty
43  * @subpackage Compiler
44  */
45 class Smarty_Internal_Compile_Setfilterclose extends Smarty_Internal_CompileBase
46 {
47     /**
48      * Compiles code for the {/setfilter} tag
49      * This tag does not generate compiled output. It resets variable filter.
50      *
51      * @param  array                                $args     array with attributes from parser
52      * @param \Smarty_Internal_TemplateCompilerBase $compiler compiler object
53      *
54      * @return string compiled code
55      */
56     public function compile($args, Smarty_Internal_TemplateCompilerBase $compiler)
57     {
58         $_attr = $this->getAttributes($compiler, $args);
59         // reset variable filter to previous state
60         if (count($compiler->variable_filter_stack)) {
61             $compiler->variable_filters = array_pop($compiler->variable_filter_stack);
62         } else {
63             $compiler->variable_filters = array();
64         }
65         // this tag does not return compiled code
66         $compiler->has_code = false;
67
68         return true;
69     }
70 }