From 1bbc384db6a6798800c04292820ab503121db918 Mon Sep 17 00:00:00 2001 From: Alexander Moisseev Date: Sun, 21 Oct 2018 21:53:15 +0300 Subject: [PATCH] [WebUI] Add history rows per page control --- .eslintrc.json | 2 +- interface/css/rspamd.css | 5 +++++ interface/index.html | 8 ++++---- interface/js/app/history.js | 26 ++++++++++++++++++++++---- 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 230365d86..b57c7129d 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -23,7 +23,7 @@ "singleLine": { "afterColon": false } }], "max-params": ["warn", 6], - "max-statements": ["warn", 31], + "max-statements": ["warn", 33], "max-statements-per-line": ["error", { "max": 2 }], "multiline-comment-style": "off", "multiline-ternary": ["error", "always-multiline"], diff --git a/interface/css/rspamd.css b/interface/css/rspamd.css index 7c6880f6c..b99c3e2b3 100644 --- a/interface/css/rspamd.css +++ b/interface/css/rspamd.css @@ -155,8 +155,13 @@ input.action-scores { height: auto; } .widget-title-form label { + font-size: 12px; font-weight: normal; } +#history_page_size { + width:6em !important; + text-align: center; +} /* Symbols coloring */ .symbol-default { diff --git a/interface/index.html b/interface/index.html index 8d40da510..8b9b65c9d 100644 --- a/interface/index.html +++ b/interface/index.html @@ -287,22 +287,22 @@
-
-
+
-
+ + - +
History
diff --git a/interface/js/app/history.js b/interface/js/app/history.js index 8717d2e8e..fda16e245 100644 --- a/interface/js/app/history.js +++ b/interface/js/app/history.js @@ -27,7 +27,22 @@ define(["jquery", "footable", "humanize"], function ($, _, Humanize) { "use strict"; - var rows_per_page = 25; + var page_size = { + errors: 25, + history: 25 + }; + + function set_page_size(n, callback) { + if (n !== page_size.history && n > 0) { + page_size.history = n; + if (callback) { + return callback(n); + } + } + return null; + } + + set_page_size($("#history_page_size").val()); var ui = {}; var prevVersion = null; @@ -611,7 +626,7 @@ define(["jquery", "footable", "humanize"], paging: { enabled: true, limit: 5, - size: rows_per_page + size: page_size.history }, filtering: { enabled: true, @@ -652,7 +667,7 @@ define(["jquery", "footable", "humanize"], function waitForRowsDisplayed(rows_total, callback, iteration) { var i = (typeof iteration === "undefined") ? 10 : iteration; var num_rows = $("#historyTable > tbody > tr").length; - if (num_rows === rows_per_page || + if (num_rows === page_size.history || num_rows === rows_total) { return callback(); } else if (--i) { @@ -742,6 +757,9 @@ define(["jquery", "footable", "humanize"], var order = this.value; change_symbols_order(order); }); + $("#history_page_size").change(function () { + set_page_size(this.value, function (n) { tables.history.pageSize(n); }); + }); $(document).on("click", ".btn-sym-order button", function () { var order = this.value; $("#selSymOrder").val(order); @@ -782,7 +800,7 @@ define(["jquery", "footable", "humanize"], paging: { enabled: true, limit: 5, - size: rows_per_page + size: page_size.errors }, filtering: { enabled: true, -- 2.39.5