From c48b71d0afd451874367ab4a7262437474df1ee8 Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Sun, 18 Sep 2016 19:08:33 -0500 Subject: [PATCH] Remove external uses of GenGroupSQL() --- html/includes/print-map.inc.php | 12 ++++-------- html/includes/table/alerts.inc.php | 10 ++-------- includes/device-groups.inc.php | 2 +- 3 files changed, 7 insertions(+), 17 deletions(-) diff --git a/html/includes/print-map.inc.php b/html/includes/print-map.inc.php index dc57439798..e0da7e3283 100644 --- a/html/includes/print-map.inc.php +++ b/html/includes/print-map.inc.php @@ -40,14 +40,10 @@ $devices = array(); $where = ""; if (is_numeric($vars['group'])) { - $group_pattern = dbFetchCell('SELECT `pattern` FROM `device_groups` WHERE id = '.$vars['group']); - $group_pattern = rtrim($group_pattern, '&&'); - $group_pattern = rtrim($group_pattern, '||'); - - $device_id_sql = GenGroupSQL($group_pattern); - if ($device_id_sql) { - $where .= " AND D1.device_id IN ($device_id_sql) OR D2.device_id IN ($device_id_sql)"; - } + $where .= " AND D1.device_id IN (SELECT `device_id` FROM `device_group_device` WHERE `device_group_id` = ?)"; + $sql_array[] = $vars['group']; + $where .= " OR D2.device_id IN (SELECT `device_id` FROM `device_group_device` WHERE `device_group_id` = ?)"; + $sql_array[] = $vars['group']; } if (in_array('mac', $config['network_map_items'])) { diff --git a/html/includes/table/alerts.inc.php b/html/includes/table/alerts.inc.php index 29b678179c..802db97d66 100644 --- a/html/includes/table/alerts.inc.php +++ b/html/includes/table/alerts.inc.php @@ -50,14 +50,8 @@ if (isset($_POST['min_severity'])) { } if (is_numeric($_POST['group'])) { - $group_pattern = dbFetchCell('SELECT `pattern` FROM `device_groups` WHERE id = '.$_POST['group']); - $group_pattern = rtrim($group_pattern, '&&'); - $group_pattern = rtrim($group_pattern, '||'); - - $device_id_sql = GenGroupSQL($group_pattern); - if ($device_id_sql) { - $where .= " AND devices.device_id IN ($device_id_sql)"; - } + $where .= " AND devices.device_id IN (SELECT `device_id` FROM `device_group_device` WHERE `device_group_id` = ?)"; + $param[] = $_POST['group']; } if (!$show_recovered) { diff --git a/includes/device-groups.inc.php b/includes/device-groups.inc.php index 8adb08e114..058456de3c 100644 --- a/includes/device-groups.inc.php +++ b/includes/device-groups.inc.php @@ -74,7 +74,7 @@ function EditDeviceGroup($group_id, $name = null, $desc = null, $pattern = null) * Generate SQL from Group-Pattern * @param string $pattern Pattern to generate SQL for * @param string $search What to searchid for - * @return string + * @return string sql to perform the search */ function GenGroupSQL($pattern, $search = '', $extra = 0) {