diff --git a/html/forms/create-device-group.inc.php b/html/forms/create-device-group.inc.php
index 94c410c9e..0992f73a1 100644
--- a/html/forms/create-device-group.inc.php
+++ b/html/forms/create-device-group.inc.php
@@ -23,8 +23,6 @@ $desc = mres($_POST['desc']);
if( is_array($pattern) ) {
$pattern = implode(" ", $pattern);
- $pattern = rtrim($pattern,'&&');
- $pattern = rtrim($pattern,'||');
} elseif( !empty($_POST['pattern']) && !empty($_POST['condition']) && !empty($_POST['value']) ) {
$pattern = '%'.$_POST['pattern'].' '.$_POST['condition'].' ';
if( is_numeric($_POST['value']) ) {
diff --git a/html/forms/parse-device-group.inc.php b/html/forms/parse-device-group.inc.php
index 9ecd4e52e..2293b198d 100644
--- a/html/forms/parse-device-group.inc.php
+++ b/html/forms/parse-device-group.inc.php
@@ -22,7 +22,11 @@ if(is_numeric($group_id) && $group_id > 0) {
$group = dbFetchRow("SELECT * FROM `device_groups` WHERE `id` = ? LIMIT 1",array($group_id));
$group_split = preg_split('/([a-zA-Z0-9_\-\.\=\%\<\>\ \"\'\!\~\(\)\*\/\@\[\]]+[&&\|\|]+)/',$group['pattern'], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$count = count($group_split) - 1;
- $group_split[$count] = $group_split[$count].' &&';
+ if (preg_match("/\&\&$/",$group_split[$count]) == 1 || preg_match("/\|\|$/", $group_split[$count]) == 1) {
+ $group_split[$count] = $group_split[$count];
+ } else {
+ $group_split[$count] = $group_split[$count].' &&';
+ }
$output = array('name'=>$group['name'],'desc'=>$group['desc'],'pattern'=>$group_split);
echo _json_encode($output);
}
diff --git a/includes/device-groups.inc.php b/includes/device-groups.inc.php
index 533b433b5..36835c80a 100644
--- a/includes/device-groups.inc.php
+++ b/includes/device-groups.inc.php
@@ -63,6 +63,8 @@ function GenGroupSQL($pattern,$search='') {
*/
function GetDevicesFromGroup($group_id) {
$pattern = dbFetchCell("SELECT pattern FROM device_groups WHERE id = ?",array($group_id));
+ $pattern = rtrim($pattern,'&&');
+ $pattern = rtrim($pattern,'||');
if( !empty($pattern) ) {
return dbFetchRows(GenGroupSQL($pattern));
}