From 4bef35c90a4cf69ff9c5f0d7bef193589334e662 Mon Sep 17 00:00:00 2001 From: laf Date: Sat, 27 Jun 2015 17:41:31 +0100 Subject: [PATCH] Now save the connection value selected and remove when not needed --- html/forms/create-device-group.inc.php | 2 -- html/forms/parse-device-group.inc.php | 6 +++++- includes/device-groups.inc.php | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/html/forms/create-device-group.inc.php b/html/forms/create-device-group.inc.php index 94c410c9e9..0992f73a12 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 7009459f26..74af38cf63 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 533b433b56..36835c80ae 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)); }