aboutsummaryrefslogtreecommitdiffstats
path: root/interface
diff options
context:
space:
mode:
authormoisseev <moiseev@mezonplus.ru>2020-11-19 11:06:54 +0300
committermoisseev <moiseev@mezonplus.ru>2020-11-19 11:06:54 +0300
commit4f1af03dc3c233be07caf289130690f5a9f9f3c0 (patch)
tree6f0f3bc7f010309d3dcf0a8e33d6189fb6efa25b /interface
parentb6607510aa62373dc807583908db47139af80424 (diff)
downloadrspamd-4f1af03dc3c233be07caf289130690f5a9f9f3c0.tar.gz
rspamd-4f1af03dc3c233be07caf289130690f5a9f9f3c0.zip
[WebUI] Add History tab autorefreshing
Issue: #820
Diffstat (limited to 'interface')
-rw-r--r--interface/index.html11
-rw-r--r--interface/js/app/rspamd.js20
2 files changed, 28 insertions, 3 deletions
diff --git a/interface/index.html b/interface/index.html
index a3810804b..ea118dcfc 100644
--- a/interface/index.html
+++ b/interface/index.html
@@ -63,6 +63,17 @@
<div class="dropdown-divider preset" role="separator"></div>
<a class="dropdown-item preset" href="#" data-value="3600000">1 hour</a>
+ <a class="dropdown-item history active" href="#" data-value=null>Disable</a>
+ <div class="dropdown-divider history" role="separator"></div>
+ <a class="dropdown-item history" href="#" data-value="10000">10 seconds</a>
+ <a class="dropdown-item history" href="#" data-value="30000">30 seconds</a>
+ <div class="dropdown-divider history" role="separator"></div>
+ <a class="dropdown-item history" href="#" data-value="60000">1 minute</a>
+ <a class="dropdown-item history" href="#" data-value="600000">10 minutes</a>
+ <a class="dropdown-item history" href="#" data-value="1800000">30 minutes</a>
+ <div class="dropdown-divider history" role="separator"></div>
+ <a class="dropdown-item history" href="#" data-value="3600000">1 hour</a>
+
<a class="dropdown-item dynamic" href="#" data-value=null>Disable</a>
<div class="dropdown-divider dynamic" role="separator"></div>
<a class="dropdown-item dynamic active" href="#" id="dynamic-item" data-value="3600000">1 hour</a>
diff --git a/interface/js/app/rspamd.js b/interface/js/app/rspamd.js
index 360ba603e..5312efa51 100644
--- a/interface/js/app/rspamd.js
+++ b/interface/js/app/rspamd.js
@@ -145,6 +145,7 @@ function ($, D3pie, visibility, NProgress, stickyTabs, tab_stat, tab_graph, tab_
if (id !== "#autoRefresh") tab_stat.statWidgets(ui, graphs, checked_server);
$(".preset").show();
+ $(".history").hide();
$(".dynamic").hide();
}());
break;
@@ -165,6 +166,7 @@ function ($, D3pie, visibility, NProgress, stickyTabs, tab_stat, tab_graph, tab_
if (id !== "#autoRefresh") tab_graph.draw(ui, graphs, tables, neighbours, checked_server, selData);
$(".preset").hide();
+ $(".history").hide();
$(".dynamic").show();
}());
break;
@@ -176,8 +178,20 @@ function ($, D3pie, visibility, NProgress, stickyTabs, tab_stat, tab_graph, tab_
tab_symbols.getSymbols(ui, tables, checked_server);
break;
case "#history_nav":
- tab_history.getHistory(ui, tables);
- tab_history.getErrors(ui, tables);
+ (function () {
+ function getHistoryAndErrors() {
+ tab_history.getHistory(ui, tables);
+ tab_history.getErrors(ui, tables);
+ }
+ var refreshInterval = $(".dropdown-menu a.active.history").data("value");
+ setAutoRefresh(refreshInterval, "history",
+ function () { return getHistoryAndErrors(); });
+ if (id !== "#autoRefresh") getHistoryAndErrors();
+
+ $(".preset").hide();
+ $(".history").show();
+ $(".dynamic").hide();
+ }());
break;
case "#disconnect":
disconnect();
@@ -414,7 +428,7 @@ function ($, D3pie, visibility, NProgress, stickyTabs, tab_stat, tab_graph, tab_
$(".dropdown-menu a").click(function (e) {
e.preventDefault();
var classList = $(this).attr("class");
- var menuClass = (/\b(?:dynamic|preset)\b/).exec(classList)[0];
+ var menuClass = (/\b(?:dynamic|history|preset)\b/).exec(classList)[0];
$(".dropdown-menu a.active." + menuClass).removeClass("active");
$(this).addClass("active");
tabClick("#autoRefresh");