From 2b5fbd28bdaae2c81eacb3dd29c2d9ca5c1b1681 Mon Sep 17 00:00:00 2001 From: vitalif Date: Tue, 23 Apr 2013 19:08:59 +0000 Subject: [PATCH] Additional quoting functions --- template.parser.php | 52 ++++++++++++++++++++++++++++++++++++++++++++- template.php | 6 ++++++ 2 files changed, 57 insertions(+), 1 deletion(-) diff --git a/template.parser.php b/template.parser.php index d84a73a..6868bfa 100644 --- a/template.parser.php +++ b/template.parser.php @@ -82,7 +82,58 @@ class VMXTemplateCompiler 'parse' => true, 'process_inline' => true, 'include_inline' => true, + 'exec' => true, + 'exec_from' => true, 'parse_inline' => true, + 'exec_from_inline' => true, + 'quote' => true, + 'and' => true, + 'not' => true, + 'add' => true, + 'sub' => true, + 'mul' => true, + 'div' => true, + 'mod' => true, + 'log' => true, + 'even' => true, + 'odd' => true, + 'eq' => true, + 'ne' => true, + 'gt' => true, + 'lt' => true, + 'ge' => true, + 'le' => true, + 'seq' => true, + 'sne' => true, + 'sgt' => true, + 'slt' => true, + 'sge' => true, + 'sle' => true, + 'neq' => true, + 'nne' => true, + 'ngt' => true, + 'nlt' => true, + 'nge' => true, + 'nle' => true, + 'strlen' => true, + 'strftime' => true, + 'hash' => true, + 'keys' => true, + 'values' => true, + 'sort' => true, + 'pairs' => true, + 'array' => true, + 'range' => true, + 'is_array' => true, + 'count' => true, + 'subarray' => true, + 'subarray_divmod' => true, + 'array_merge' => true, + 'void' => true, + 'json' => true, + // TODO: yesno => $b && $c + // TODO: concat => all quoted + // TODO: set => should return empty value, quoted ); var $options, $st, $lexer, $parser; @@ -446,7 +497,6 @@ $code /* игнорирование результата (а-ля js) */ function function_void($a) { return "self::void($a)"; } - function void($a) { return ''; } /* дамп переменной */ function function_dump($var) diff --git a/template.php b/template.php index e016623..b7e1257 100644 --- a/template.php +++ b/template.php @@ -612,6 +612,12 @@ class VMXTemplate return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 0, 1); } + // Ignore result + function void($a) + { + return ''; + } + // Select one of 3 plural forms for russian language static function plural_ru($count, $one, $few, $many) {