Module: check_mk
Branch: master
Commit: 603f2d71481f65ac2d598b25f46deb34f1d3926e
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=603f2d71481f65…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Tue Jan 8 11:35:03 2019 +0100
Discovery: Fixed bulk actions affecting services of other tables
Change-Id: Ibdffd42933c27550d97cc4ec8f1972661ad8672b
---
cmk/gui/wato/pages/services.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/cmk/gui/wato/pages/services.py b/cmk/gui/wato/pages/services.py
index a61af83..768ada8 100644
--- a/cmk/gui/wato/pages/services.py
+++ b/cmk/gui/wato/pages/services.py
@@ -462,6 +462,7 @@ class ModeAjaxServiceDiscovery(WatoWebApiMode):
request = self.webapi_request()
html.del_var("request") # Do not add this to URLs constructed later
request.setdefault("update_target", None)
+ request.setdefault("update_source", None)
request.setdefault("update_services", [])
folder = watolib.Folder.folder(request["folder_path"])
@@ -806,6 +807,9 @@ class ModeAjaxServiceDiscovery(WatoWebApiMode):
return table_source # should never happen
if self._options.action == DiscoveryAction.BULK_UPDATE:
+ if table_source != request["update_source"]:
+ return table_source
+
if not self._options.show_checkboxes:
return update_target
@@ -1062,7 +1066,11 @@ class DiscoveryPageRenderer(object):
html.jsbutton(
"_bulk_%s_%s" % (source, target),
target_label,
- self._start_js_call(options, request_vars={"update_target":
target}),
+ self._start_js_call(
+ options, request_vars={
+ "update_target": target,
+ "update_source": source,
+ }),
title=_("Move %s to %s services") % (label, target),
disabled=self._is_running(discovery_result),
)
@@ -1269,6 +1277,7 @@ class DiscoveryPageRenderer(object):
options,
request_vars={
"update_target": table_target,
+ "update_source": table_source,
"update_services": [checkbox_name],
}),
)
@@ -1284,6 +1293,7 @@ class DiscoveryPageRenderer(object):
options,
request_vars={
"update_target": DiscoveryState.REMOVED,
+ "update_source": table_source,
"update_services": [checkbox_name],
}),
)