diff options
author | Alejandro Sirgo Rica <asirgo@soleta.eu> | 2024-06-13 12:29:21 +0200 |
---|---|---|
committer | Alejandro Sirgo Rica <asirgo@soleta.eu> | 2024-06-14 09:25:17 +0200 |
commit | 37ae1bc5a218d0901431f6ab319f766b105c0773 (patch) | |
tree | 3568f928658cbf5bd9c3a6fdbf6b5180d84f3a9f | |
parent | 272a5067ad6bc4a9b5e4a401ea7625e71d6914af (diff) |
ogcp: add disclosure widget to sidebar
Add cache buster to soleta.css in base.html to have control over
cache expirity.
Bump soleta.css version to ensure browser does not used older (cached)
version.
Add CSS rules to show a disclosure widget in the sidebar.
Show center checkboxes as disabled in the commands view sidebar
for visual consistency.
Add class "collapsed" to the proper HTML components to keep a
proper state on page reload.
-rw-r--r-- | ogcp/static/css/soleta.css | 15 | ||||
-rw-r--r-- | ogcp/static/js/ogcp.js | 2 | ||||
-rw-r--r-- | ogcp/templates/base.html | 2 | ||||
-rw-r--r-- | ogcp/templates/macros.html | 3 |
4 files changed, 19 insertions, 3 deletions
diff --git a/ogcp/static/css/soleta.css b/ogcp/static/css/soleta.css index 6a0a850..7009abb 100644 --- a/ogcp/static/css/soleta.css +++ b/ogcp/static/css/soleta.css @@ -61,3 +61,18 @@ html, body { #dhcpd_conf { height: 25rem; } + +a.nav-link.collapsed:not(.disabled)[data-toggle="collapse"]::before { + content: "▶"; + position: absolute; + left: -15px; + font-size: 0.7em; +} + +a.nav-link:not(.collapsed):not(.disabled)[data-toggle="collapse"]::before { + content: "▶"; + position: absolute; + left: -15px; + transform: rotate(90deg); + font-size: 0.7em; +} diff --git a/ogcp/static/js/ogcp.js b/ogcp/static/js/ogcp.js index a0bbed1..5c15b30 100644 --- a/ogcp/static/js/ogcp.js +++ b/ogcp/static/js/ogcp.js @@ -193,6 +193,8 @@ function keepScopesTreeState() { scopes_tree.each(function () { if (localStorage.getItem(this.id) == 'show') { $(this).collapse('show'); + } else { + $(this).siblings('a').addClass('collapsed'); } }); } diff --git a/ogcp/templates/base.html b/ogcp/templates/base.html index 3ac4f5d..30dc3bb 100644 --- a/ogcp/templates/base.html +++ b/ogcp/templates/base.html @@ -10,7 +10,7 @@ <link rel="stylesheet" href="{{ url_for('static', filename='AdminLTE/plugins/fontawesome-free/css/all.min.css') }}"> <!-- Theme style --> <link rel="stylesheet" href="{{ url_for('static', filename='AdminLTE/dist/css/adminlte.min.css') }}"> - <link rel="stylesheet" href="{{ url_for('static', filename='css/soleta.css') }}" /> + <link rel="stylesheet" href="{{ url_for('static', filename='css/soleta.css') }}?v=1" /> {% endblock %} </head> <body> diff --git a/ogcp/templates/macros.html b/ogcp/templates/macros.html index c6cd15e..4047e87 100644 --- a/ogcp/templates/macros.html +++ b/ogcp/templates/macros.html @@ -36,13 +36,12 @@ {% if scope.get("selected", False) %}checked{% endif %} name="scope-server" hidden/> {% elif scope["type"] == "center" %} - {% if selection_mode != "commands" %} <input id="{{ input_id }}" class="form-check-input" type="checkbox" form="scopesForm" value="{{ scope["id"] }}" {% if state %}style="filter: grayscale(100%);" onclick="return false;"{% endif %} {% if scope.get("selected", False) %}checked{% endif %} + {% if selection_mode == "commands" %}disabled="disabled"{% endif %} name="scope-center" /> - {% endif %} {% elif scope["type"] == "room" %} {% set parent_room = scope.name + "-" + scope.id|string %} <input id="{{ input_id }}" class="form-check-input" type="checkbox" form="scopesForm" |