From 347749c0e183905b17f361c5d14801781e8bcb49 Mon Sep 17 00:00:00 2001 From: redref Date: Tue, 31 Jan 2017 16:18:11 +0100 Subject: [PATCH 1/5] Footer - grid padding in the same unit as text --- puppetboard/static/css/puppetboard.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/puppetboard/static/css/puppetboard.css b/puppetboard/static/css/puppetboard.css index 4f7f478..19506f5 100644 --- a/puppetboard/static/css/puppetboard.css +++ b/puppetboard/static/css/puppetboard.css @@ -14,7 +14,7 @@ h1.ui.header.no-margin-bottom { } .ui.grid.padding-bottom { - padding-bottom: 40px !important; + padding-bottom: 4em !important; } .status { From 17f902c18fc9a5d1ba86784d7dafce72dff55a33 Mon Sep 17 00:00:00 2001 From: redref Date: Tue, 31 Jan 2017 16:19:30 +0100 Subject: [PATCH 2/5] Fix filter-list behavior with a class flag --- puppetboard/static/coffeescript/lists.coffee | 4 +- puppetboard/static/js/lists.js | 6 +-- puppetboard/templates/facts.html | 44 ++++++++++---------- puppetboard/templates/metrics.html | 19 ++++----- 4 files changed, 31 insertions(+), 42 deletions(-) diff --git a/puppetboard/static/coffeescript/lists.coffee b/puppetboard/static/coffeescript/lists.coffee index 86e89ec..adf347b 100644 --- a/puppetboard/static/coffeescript/lists.coffee +++ b/puppetboard/static/coffeescript/lists.coffee @@ -1,11 +1,9 @@ $ = jQuery -$ -> -$('input.filter-list').parent('div').removeClass('hide') $("input.filter-list").on "keyup", (e) -> rex = new RegExp($(this).val(), "i") $(".searchable li").hide() - $(".searchable li").parent().parent().hide() + $(".searchable li").parent().parent('.list_hide_segment').hide() $(".searchable li").filter( -> rex.test $(this).text() ).show() diff --git a/puppetboard/static/js/lists.js b/puppetboard/static/js/lists.js index afaee34..206ed5d 100644 --- a/puppetboard/static/js/lists.js +++ b/puppetboard/static/js/lists.js @@ -4,15 +4,11 @@ $ = jQuery; - $(function() {}); - - $('input.filter-list').parent('div').removeClass('hide'); - $("input.filter-list").on("keyup", function(e) { var ev, rex; rex = new RegExp($(this).val(), "i"); $(".searchable li").hide(); - $(".searchable li").parent().parent().hide(); + $(".searchable li").parent().parent('.list_hide_segment').hide(); $(".searchable li").filter(function() { return rex.test($(this).text()); }).show(); diff --git a/puppetboard/templates/facts.html b/puppetboard/templates/facts.html index 345b293..ce3fe77 100644 --- a/puppetboard/templates/facts.html +++ b/puppetboard/templates/facts.html @@ -1,29 +1,29 @@ {% extends 'layout.html' %} {% block content %} -
+
-
- {%- set facts_count = 0 -%} - {%- set break = facts_len//4 + 1 -%} - {%- for key,facts_list in facts_dict %} -
- {{key}} -
    - {%- for fact in facts_list %} -
  • {{fact}}
  • - {%- endfor %} -
-
- {%- set facts_count = facts_count + facts_list|length -%} - {%- if facts_count >= break -%} -
-
- {%- set break = facts_len//4 + 1 + break -%} - {%- endif -%} - {%- set facts_count = facts_count + 5 -%} - {% endfor %} -
+
+ {%- set facts_count = 0 -%} + {%- set break = facts_len//4 + 1 -%} + {%- for key,facts_list in facts_dict %} +
+ {{key}} +
    + {%- for fact in facts_list %} +
  • {{fact}}
  • + {%- endfor %} +
+
+ {%- set facts_count = facts_count + facts_list|length -%} + {%- if facts_count >= break -%} +
+
+ {%- set break = facts_len//4 + 1 + break -%} + {%- endif -%} + {%- set facts_count = facts_count + 5 -%} + {% endfor %} +
{% endblock content %} diff --git a/puppetboard/templates/metrics.html b/puppetboard/templates/metrics.html index eb0440e..844ad41 100644 --- a/puppetboard/templates/metrics.html +++ b/puppetboard/templates/metrics.html @@ -1,19 +1,14 @@ {% extends 'layout.html' %} {% block content %}

Metrics

-
- +
+
- - - Metric - - +
    {% for metric in metrics %} -
- - +
  • + {{metric}} +
  • {% endfor %} - -
    {{metric}}
    + {% endblock content %} From 851797e4c647bb5c427715774b20a936c2ccab55 Mon Sep 17 00:00:00 2001 From: redref Date: Tue, 31 Jan 2017 17:11:41 +0100 Subject: [PATCH 3/5] filter-list handling reload --- puppetboard/static/coffeescript/lists.coffee | 17 +++++++++---- puppetboard/static/js/lists.js | 25 ++++++++++++++++---- 2 files changed, 33 insertions(+), 9 deletions(-) diff --git a/puppetboard/static/coffeescript/lists.coffee b/puppetboard/static/coffeescript/lists.coffee index adf347b..5a4968e 100644 --- a/puppetboard/static/coffeescript/lists.coffee +++ b/puppetboard/static/coffeescript/lists.coffee @@ -1,7 +1,6 @@ $ = jQuery -$("input.filter-list").on "keyup", (e) -> - rex = new RegExp($(this).val(), "i") - +filter_list = (val) -> + rex = new RegExp(val, "i") $(".searchable li").hide() $(".searchable li").parent().parent('.list_hide_segment').hide() $(".searchable li").filter( -> @@ -10,10 +9,20 @@ $("input.filter-list").on "keyup", (e) -> $(".searchable li").filter( -> rex.test $(this).text() ).parent().parent().show() - +$("input.filter-list").on "keyup", (e) -> + # If key is escape, reset value if e.keyCode is 27 $(e.currentTarget).val "" ev = $.Event("keyup") ev.keyCode = 13 $(e.currentTarget).trigger(ev) e.currentTarget.blur() + else + filter_list($(this).val()) +$("input.filter-list").ready -> + elem = $("input.filter-list") + elem.focus() + val = elem.val() + filter_list(val) + # Force cursor at the end + elem.val('').val(val) diff --git a/puppetboard/static/js/lists.js b/puppetboard/static/js/lists.js index 206ed5d..9f8d455 100644 --- a/puppetboard/static/js/lists.js +++ b/puppetboard/static/js/lists.js @@ -1,27 +1,42 @@ // Generated by CoffeeScript 1.9.3 (function() { - var $; + var $, filter_list; $ = jQuery; - $("input.filter-list").on("keyup", function(e) { - var ev, rex; - rex = new RegExp($(this).val(), "i"); + filter_list = function(val) { + var rex; + rex = new RegExp(val, "i"); $(".searchable li").hide(); $(".searchable li").parent().parent('.list_hide_segment').hide(); $(".searchable li").filter(function() { return rex.test($(this).text()); }).show(); - $(".searchable li").filter(function() { + return $(".searchable li").filter(function() { return rex.test($(this).text()); }).parent().parent().show(); + }; + + $("input.filter-list").on("keyup", function(e) { + var ev; if (e.keyCode === 27) { $(e.currentTarget).val(""); ev = $.Event("keyup"); ev.keyCode = 13; $(e.currentTarget).trigger(ev); return e.currentTarget.blur(); + } else { + return filter_list($(this).val()); } }); + $("input.filter-list").ready(function() { + var elem, val; + elem = $("input.filter-list"); + elem.focus(); + val = elem.val(); + filter_list(val); + return elem.val('').val(val); + }); + }).call(this); From f6e04ca67f85c250953031bf99550f841f48471c Mon Sep 17 00:00:00 2001 From: redref Date: Mon, 30 Jan 2017 16:20:31 +0100 Subject: [PATCH 4/5] Remove non-needed columns option --- puppetboard/templates/_macros.html | 2 +- puppetboard/templates/node.html | 2 +- puppetboard/templates/reports.html | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/puppetboard/templates/_macros.html b/puppetboard/templates/_macros.html index 2ebb484..fe28cc5 100644 --- a/puppetboard/templates/_macros.html +++ b/puppetboard/templates/_macros.html @@ -57,7 +57,7 @@ {% endif %} {%- endmacro %} -{% macro datatable_init(table_html_id, ajax_url, default_length, length_selector, extra_options=None, columns) -%} +{% macro datatable_init(table_html_id, ajax_url, default_length, length_selector, extra_options=None) -%} // Init datatable $.fn.dataTable.ext.errMode = 'throw'; var table = $('#{{ table_html_id }}').DataTable({ diff --git a/puppetboard/templates/node.html b/puppetboard/templates/node.html index 9b7964d..507e877 100644 --- a/puppetboard/templates/node.html +++ b/puppetboard/templates/node.html @@ -17,7 +17,7 @@ 'pagingType': 'simple', "bFilter": false, {% endmacro %} -{{ macros.datatable_init(table_html_id="reports_table", ajax_url=url_for('reports_ajax', env=current_env, node_name=node.name), default_length=config.LITTLE_TABLE_COUNT, length_selector=config.TABLE_COUNT_SELECTOR, columns=columns, extra_options=extra_options) }} +{{ macros.datatable_init(table_html_id="reports_table", ajax_url=url_for('reports_ajax', env=current_env, node_name=node.name), default_length=config.LITTLE_TABLE_COUNT, length_selector=config.TABLE_COUNT_SELECTOR, extra_options=extra_options) }} {% endblock onload_script %} {% block content %} diff --git a/puppetboard/templates/reports.html b/puppetboard/templates/reports.html index 1d16d03..d8fe86a 100644 --- a/puppetboard/templates/reports.html +++ b/puppetboard/templates/reports.html @@ -33,7 +33,7 @@ // No initial loading "deferLoading": true, {% endmacro %} - {{ macros.datatable_init(table_html_id="reports_table", ajax_url=url_for('reports_ajax', env=current_env, node_name=node_name), default_length=config.NORMAL_TABLE_COUNT, length_selector=config.TABLE_COUNT_SELECTOR, extra_options=extra_options, columns=columns) }} + {{ macros.datatable_init(table_html_id="reports_table", ajax_url=url_for('reports_ajax', env=current_env, node_name=node_name), default_length=config.NORMAL_TABLE_COUNT, length_selector=config.TABLE_COUNT_SELECTOR, extra_options=extra_options) }} // Event listener for status filters function status_filter_change(){ From 1432cfeac24d23b2e7b4c9529216fd13f3d6999d Mon Sep 17 00:00:00 2001 From: redref Date: Tue, 31 Jan 2017 19:14:20 +0100 Subject: [PATCH 5/5] Fix tablesort when no pie - +indent --- puppetboard/templates/fact.html | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/puppetboard/templates/fact.html b/puppetboard/templates/fact.html index 2e3380f..ffaa5ce 100644 --- a/puppetboard/templates/fact.html +++ b/puppetboard/templates/fact.html @@ -1,9 +1,8 @@ {% extends 'layout.html' %} {% import '_macros.html' as macros %} -{% if render_graph %} - {% block javascript %} +{% if render_graph %} var chart = null; var data = [ {% for fact in facts|groupby('value') %} @@ -22,19 +21,21 @@ var otherdata = fact_values.slice(15); if (otherdata.length > 0) { realdata.push(["other", otherdata.reduce(function(a,b){return a + b[1];},0)]); } +{% endif %} {% endblock javascript %} {% block onload_script %} - $('table').tablesort(); - chart = c3.generate({ + $('table').tablesort(); + {% if render_graph %} + chart = c3.generate({ bindto: '#factChart', data: { columns: realdata, type : '{{config.GRAPH_TYPE|default('pie')}}', } -}); + }); + {% endif %} {% endblock onload_script %} -{% endif %} {% block content %}