]> git.mxchange.org Git - friendica.git/blob - library/Smarty/libs/sysplugins/smarty_internal_nocache_insert.php
reverting tinymce changes, updating smarty to 3.1.19
[friendica.git] / library / Smarty / libs / sysplugins / smarty_internal_nocache_insert.php
1 <?php
2 /**
3  * Smarty Internal Plugin Nocache Insert
4  * Compiles the {insert} tag into the cache file
5  *
6  * @package    Smarty
7  * @subpackage Compiler
8  * @author     Uwe Tews
9  */
10
11 /**
12  * Smarty Internal Plugin Compile Insert Class
13  *
14  * @package    Smarty
15  * @subpackage Compiler
16  */
17 class Smarty_Internal_Nocache_Insert
18 {
19     /**
20      * Compiles code for the {insert} tag into cache file
21      *
22      * @param  string                   $_function insert function name
23      * @param  array                    $_attr     array with parameter
24      * @param  Smarty_Internal_Template $_template template object
25      * @param  string                   $_script   script name to load or 'null'
26      * @param  string                   $_assign   optional variable name
27      *
28      * @return string                   compiled code
29      */
30     public static function compile($_function, $_attr, $_template, $_script, $_assign = null)
31     {
32         $_output = '<?php ';
33         if ($_script != 'null') {
34             // script which must be included
35             // code for script file loading
36             $_output .= "require_once '{$_script}';";
37         }
38         // call insert
39         if (isset($_assign)) {
40             $_output .= "\$_smarty_tpl->assign('{$_assign}' , {$_function} (" . var_export($_attr, true) . ",\$_smarty_tpl), true);?>";
41         } else {
42             $_output .= "echo {$_function}(" . var_export($_attr, true) . ",\$_smarty_tpl);?>";
43         }
44         $_tpl = $_template;
45         while ($_tpl->parent instanceof Smarty_Internal_Template) {
46             $_tpl = $_tpl->parent;
47         }
48
49         return "/*%%SmartyNocache:{$_tpl->properties['nocache_hash']}%%*/" . $_output . "/*/%%SmartyNocache:{$_tpl->properties['nocache_hash']}%%*/";
50     }
51 }