From afe0eeb7fc214ce659efe2c63fa53a42ad4ca362 Mon Sep 17 00:00:00 2001 From: alec Date: Fri, 18 Nov 2011 07:49:02 +0000 Subject: - Fixed setting test type to :is when none is specified git-svn-id: https://svn.roundcube.net/trunk@5443 208e9e7b-5314-0410-a742-e7e81cd9613c --- plugins/managesieve/Changelog | 4 +++- plugins/managesieve/managesieve.php | 14 ++++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog index 3c04b4a1c..de0116eb0 100644 --- a/plugins/managesieve/Changelog +++ b/plugins/managesieve/Changelog @@ -1,4 +1,6 @@ -* version 5.0-rc1 [2011-11-17] +- Fixed setting test type to :is when none is specified + +* version 5.0-rc1 [2011-] ----------------------------------------------------------- - Fixed sorting of scripts, scripts including aware of the sort order - Fixed import of rules with unsupported tests diff --git a/plugins/managesieve/managesieve.php b/plugins/managesieve/managesieve.php index 420ec8ba8..5ac406ade 100644 --- a/plugins/managesieve/managesieve.php +++ b/plugins/managesieve/managesieve.php @@ -1277,11 +1277,16 @@ class managesieve extends rcube_plugin // target input (TODO: lists) if (in_array($rule['test'], array('header', 'address', 'envelope'))) { - $tout .= $select_op->show(($rule['not'] ? 'not' : '').$rule['type']); + $test = ($rule['not'] ? 'not' : '').($rule['type'] ? $rule['type'] : 'is'); $target = $rule['arg2']; } + else if ($rule['test'] == 'body') { + $test = ($rule['not'] ? 'not' : '').($rule['type'] ? $rule['type'] : 'is'); + $target = $rule['arg']; + } else if ($rule['test'] == 'size') { - $tout .= $select_op->show(); + $test = ''; + $target = ''; if (preg_match('/^([0-9]+)(K|M|G)?$/', $rule['arg'], $matches)) { $sizetarget = $matches[1]; $sizeitem = $matches[2]; @@ -1292,10 +1297,11 @@ class managesieve extends rcube_plugin } } else { - $tout .= $select_op->show(($rule['not'] ? 'not' : '').$rule['test']); - $target = $rule['test'] == 'body' ? $rule['arg'] : ''; + $test = ($rule['not'] ? 'not' : '').$rule['test']; + $target = ''; } + $tout .= $select_op->show($test); $tout .= 'error_class($id, 'test', 'target', 'rule_target') . ' style="display:' . ($rule['test']!='size' && $rule['test'] != 'exists' ? 'inline' : 'none') . '" />'."\n"; -- cgit v1.2.3