Module: check_mk
Branch: master
Commit: 9a3f48ff8e8c1d46827b14af6db43e30d48367ea
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=9a3f48ff8e8c1d…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Thu Dec 15 12:15:37 2016 +0100
Moved togglebutton to html.toggle_button
Change-Id: I13e85e3ee3265286771cc1404e2c36492f285ee5
---
web/htdocs/htmllib.py | 26 ++++++++++++++++++++++++++
web/htdocs/views.py | 31 +++++--------------------------
2 files changed, 31 insertions(+), 26 deletions(-)
diff --git a/web/htdocs/htmllib.py b/web/htdocs/htmllib.py
index 7d34b24..4bb3483 100644
--- a/web/htdocs/htmllib.py
+++ b/web/htdocs/htmllib.py
@@ -1789,6 +1789,32 @@ class html(DeprecationWrapper):
self.add_keybinding([html.F1 + (fkey - 1)],
"document.location='%s';" % self._escape_attribute(url))
+ # TODO: Refactor the arguments. It is only used in views/wato
+ def toggle_button(self, id, isopen, icon, help, hidden=False, disabled=False):
+ self.begin_context_buttons() # TODO: Check all calls. If done before, remove
this!
+
+ if disabled:
+ state = "off" if disabled else "on"
+ cssclass = ""
+ help = ""
+ else:
+ state = "on"
+ if isopen:
+ cssclass = "down"
+ else:
+ cssclass = "up"
+
+ self.open_div(
+ id_="%s_%s" % (id, state),
+ class_=["togglebutton", state, icon, cssclass],
+ title=help,
+ onclick="view_toggle_form(this, '%s');" % id,
+ style='display:none' if hidden else None,
+ )
+ self.img(src="images/icon_%s.png" % icon)
+ self.close_div()
+
+
def get_button_counts(self):
raise NotImplementedError()
diff --git a/web/htdocs/views.py b/web/htdocs/views.py
index a4c1cbc..b25de82 100644
--- a/web/htdocs/views.py
+++ b/web/htdocs/views.py
@@ -2023,27 +2023,6 @@ def ajax_set_viewoption():
po.save_to_config()
-def togglebutton(id, isopen, icon, help, hidden=False, disabled=False):
- html.begin_context_buttons() # TODO: Check all calls. If done before, remove this!
-
- if disabled:
- state = "off" if disabled else "on"
- cssclass = ""
- help = ""
- else:
- state = "on"
- if isopen:
- cssclass = "down"
- else:
- cssclass = "up"
-
- hide = hidden and ' style="display:none"' or ''
- html.write('<div id="%s_%s" class="togglebutton %s %s %s"
title="%s" '
- 'onclick="view_toggle_form(this,
\'%s\');"%s>'
- '<img src="images/icon_%s.png"></div>' % \
- (id, state, state, icon, cssclass, help, id, hide, icon))
-
-
def show_context_links(thisview, show_filters,
enable_commands, enable_checkboxes, show_checkboxes,
show_availability):
@@ -2060,23 +2039,23 @@ def show_context_links(thisview, show_filters,
else:
icon = "filters"
help = _("Set a filter for refining the shown data")
- togglebutton("filters", filter_isopen, icon, help, disabled=not
show_filters)
+ html.toggle_button("filters", filter_isopen, icon, help, disabled=not
show_filters)
if display_options.enabled(display_options.D):
- togglebutton("painteroptions", False, "painteroptions",
_("Modify display options"),
+ html.toggle_button("painteroptions", False, "painteroptions",
_("Modify display options"),
disabled=not painter_options.painter_option_form_enabled())
if display_options.enabled(display_options.C):
- togglebutton("commands", False, "commands", _("Execute
commands on hosts, services and other objects"),
+ html.toggle_button("commands", False, "commands",
_("Execute commands on hosts, services and other objects"),
hidden = not enable_commands)
- togglebutton("commands", False, "commands", "",
hidden=enable_commands, disabled=True)
+ html.toggle_button("commands", False, "commands",
"", hidden=enable_commands, disabled=True)
selection_enabled = (enable_commands and enable_checkboxes) or
thisview.get("force_checkboxes")
if not thisview.get("force_checkboxes"):
toggler("checkbox", "checkbox", _("Enable/Disable
checkboxes for selecting rows for commands"),
"location.href='%s';" %
html.makeuri([('show_checkboxes', show_checkboxes and '0' or
'1')]),
show_checkboxes, hidden = True) # not selection_enabled)
- togglebutton("checkbox", False, "checkbox", "",
hidden=not thisview.get("force_checkboxes"), disabled=True)
+ html.toggle_button("checkbox", False, "checkbox",
"", hidden=not thisview.get("force_checkboxes"), disabled=True)
html.javascript('g_selection_enabled = %s;' % (selection_enabled and
'true' or 'false'))
if display_options.enabled(display_options.O):