diff options
Diffstat (limited to 'Zotlabs/Render/Comanche.php')
-rw-r--r-- | Zotlabs/Render/Comanche.php | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/Zotlabs/Render/Comanche.php b/Zotlabs/Render/Comanche.php index 230c2455e..7288c7fd7 100644 --- a/Zotlabs/Render/Comanche.php +++ b/Zotlabs/Render/Comanche.php @@ -219,7 +219,8 @@ class Comanche { * - [if $config.system.foo {} baz] which will check if 'baz' is an array element in get_config('system','foo') * - [if $config.system.foo {*} baz] which will check if 'baz' is an array key in get_config('system','foo') * - [if $config.system.foo] which will check for a return of a true condition for get_config('system','foo'); - * + * - [if !$config.system.foo] which will check for a return of a false condition for get_config('system','foo'); + * * The values 0, '', an empty array, and an unset value will all evaluate to false. * * @param int|string $s @@ -299,6 +300,15 @@ class Comanche { return false; } + // Ordering of this check (for falsiness) with relation to the following one (check for truthiness) is important. + if (preg_match('/[\!\$](.*?)$/', $s, $matches)) { + $x = $this->get_condition_var($matches[1]); + if (!$x) { + return true; + } + return false; + } + if(preg_match('/[\$](.*?)$/',$s,$matches)) { $x = $this->get_condition_var($matches[1]); if($x) |