From 132695ceb1d7ab0e4bfbb141e9e9639111dd25b5 Mon Sep 17 00:00:00 2001 From: Jakob Sack Date: Tue, 1 Mar 2011 23:20:16 +0100 Subject: Start of the refactoring. Commit is quite big because I forgot to use git right from the beginning. Sorry. --- .../Smarty/plugins/modifiercompiler.default.php | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 3dparty/Smarty/plugins/modifiercompiler.default.php (limited to '3dparty/Smarty/plugins/modifiercompiler.default.php') diff --git a/3dparty/Smarty/plugins/modifiercompiler.default.php b/3dparty/Smarty/plugins/modifiercompiler.default.php new file mode 100644 index 00000000000..736bf458cd9 --- /dev/null +++ b/3dparty/Smarty/plugins/modifiercompiler.default.php @@ -0,0 +1,33 @@ + + * Name: default
+ * Purpose: designate default value for empty variables + * + * @link http://smarty.php.net/manual/en/language.modifier.default.php default (Smarty online manual) + * @author Uwe Tews + * @param array $params parameters + * @return string with compiled code + */ +function smarty_modifiercompiler_default ($params, $compiler) +{ + $output = $params[0]; + if (!isset($params[1])) { + $params[1] = "''"; + } + for ($i = 1, $cnt = count($params); $i < $cnt; $i++) { + $output = '(($tmp = @' . $output . ')===null||$tmp===\'\' ? ' . $params[$i] . ' : $tmp)'; + } + return $output; +} + +?> \ No newline at end of file -- cgit v1.2.3