diff --git a/includes/html/forms/create-service-template.inc.php b/includes/html/forms/create-service-template.inc.php
index ee88b9366e..af6f53463c 100644
--- a/includes/html/forms/create-service-template.inc.php
+++ b/includes/html/forms/create-service-template.inc.php
@@ -17,17 +17,18 @@ if (!Auth::user()->hasGlobalAdmin()) {
}
$service_template_id = $vars['service_template_id'];
+$device_group_id = $vars['device_group_id'];
$type = $vars['stype'];
$desc = $vars['desc'];
$ip = $vars['ip'];
$param = $vars['param'];
$ignore = isset($vars['ignore']) ? 1 : 0;
$disabled = isset($vars['disabled']) ? 1 : 0;
-$device_group_id = $vars['device_group_id'];
+
if (is_numeric($service_template_id) && $service_template_id > 0) {
// Need to edit.
- $update = array('service_template_desc' => $desc, 'service_template_ip' => $ip, 'service_template_param' => $param, 'service_template_ignore' => $ignore, 'service_template_disabled' => $disabled);
+ $update = array('device_group_id' => $device_group_id, 'service_template_type' => $type, 'service_template_desc' => $desc, 'service_template_ip' => $ip, 'service_template_param' => $param, 'service_template_ignore' => $ignore, 'service_template_disabled' => $disabled);
if (is_numeric(edit_service_template($update, $service_template_id))) {
$status = array('status' =>0, 'message' => 'Modified Service Template: '.$service_template_id.': '.$type.'');
} else {
@@ -36,7 +37,7 @@ if (is_numeric($service_template_id) && $service_template_id > 0) {
} else {
// Need to add.
$service_template_id = add_service_template($device_group_id, $type, $desc, $ip, $param, $ignore, $disabled);
- if ($service_template_id == false) {
+ if ($service_template_id == NULL) {
$status = array('status' =>1, 'message' => 'ERROR: Failed to add Service Template: '.$service_template_id.': '.$type.'');
} else {
$status = array('status' =>0, 'message' => 'Added Service Template: '.$service_template_id.': '.$type.'');
diff --git a/includes/html/forms/parse-service-template.inc.php b/includes/html/forms/parse-service-template.inc.php
index d201d1a9c7..656526c937 100644
--- a/includes/html/forms/parse-service-template.inc.php
+++ b/includes/html/forms/parse-service-template.inc.php
@@ -22,6 +22,7 @@ if (is_numeric($service_template_id) && $service_template_id > 0) {
$service_template = service_template_get(null, $service_template_id);
$output = array(
+ 'device_group_id' => $service[0]['device_group_id']
'stype' => $service[0]['service_type'],
'ip' => $service[0]['service_ip'],
'desc' => $service[0]['service_desc'],
diff --git a/includes/html/modal/new_service_template.inc.php b/includes/html/modal/new_service_template.inc.php
index 6b9c84144d..4833ccd12d 100644
--- a/includes/html/modal/new_service_template.inc.php
+++ b/includes/html/modal/new_service_template.inc.php
@@ -98,6 +98,7 @@ if (Auth::user()->hasGlobalAdmin()) {
// on-hide
$('#create-service-template').on('hide.bs.modal', function (event) {
+ $('#device_group_id').val('');
$('#stype').val('');
$("#stype").prop("disabled", false);
$('#ip').val('');
@@ -119,6 +120,7 @@ $('#create-service-template').on('show.bs.modal', function (e) {
data: { type: "parse-service-template", service_template_id: service_template_id },
dataType: "json",
success: function(output) {
+ $('#device_group_id').val(output['device_group_id']);
$('#stype').val(output['stype']);
$("#stype").prop("disabled", true);
$('#ip').val(output['ip']);
diff --git a/includes/services.inc.php b/includes/services.inc.php
index b492d85d05..d9f203c6ec 100644
--- a/includes/services.inc.php
+++ b/includes/services.inc.php
@@ -184,7 +184,7 @@ function discover_service_template($device_group, $service_template)
{
if (! dbFetchCell('SELECT COUNT(service_id) FROM `services` WHERE `service_template_id`= ? AND `device_group_id` = ?', array($service_template['service_template_id'], $device_group['device_group_id']))) {
$service=service_template_get($device_group, $service_template);
- $device_ids = dbFetchColumn("SELECT `device_id` FROM `device_group_device` WHERE `device_group_id`=" . $_POST['device_group_id']);
+ $device_ids = dbFetchColumn("SELECT `device_id` FROM `device_group_device` WHERE '`device_group_id` = ?", array($device_group));
foreach ($device_ids as $device) {
add_service($device, $service);
}
@@ -192,7 +192,7 @@ function discover_service_template($device_group, $service_template)
echo '+';
}
- echo "$service ";
+ echo "$service_template ";
}
function poll_service($service)