1: | <?php |
2: | /** |
3: | * Smarty plugin |
4: | * |
5: | * @package Smarty |
6: | * @subpackage PluginsModifierCompiler |
7: | */ |
8: | /** |
9: | * Smarty default modifier plugin |
10: | * Type: modifier |
11: | * Name: default |
12: | * Purpose: designate default value for empty variables |
13: | * |
14: | * @link http://www.smarty.net/manual/en/language.modifier.default.php default (Smarty online manual) |
15: | * @author Uwe Tews |
16: | * |
17: | * @param array $params parameters |
18: | * |
19: | * @return string with compiled code |
20: | */ |
21: | function smarty_modifiercompiler_default($params) |
22: | { |
23: | $output = $params[ 0 ]; |
24: | if (!isset($params[ 1 ])) { |
25: | $params[ 1 ] = "''"; |
26: | } |
27: | array_shift($params); |
28: | foreach ($params as $param) { |
29: | $output = '(($tmp = @' . $output . ')===null||$tmp===\'\' ? ' . $param . ' : $tmp)'; |
30: | } |
31: | return $output; |
32: | } |
33: |