commit 5969519: [Minor] Convert callbacks to arrow functions
moisseev
moiseev at mezonplus.ru
Mon Jul 29 17:49:14 UTC 2024
Author: moisseev
Date: 2023-11-22 10:28:30 +0300
URL: https://github.com/rspamd/rspamd/commit/5969519a01b685607532619f9130ef89ac28106d (refs/pull/4715/head)
[Minor] Convert callbacks to arrow functions
---
.eslintrc.json | 1 -
interface/js/app/config.js | 30 ++++++---------
interface/js/app/graph.js | 62 +++++++++++++-----------------
interface/js/app/history.js | 40 ++++++++-----------
interface/js/app/rspamd.js | 89 ++++++++++++++++++++-----------------------
interface/js/app/selectors.js | 18 ++++-----
interface/js/app/stats.js | 28 +++++++-------
interface/js/app/symbols.js | 20 +++++-----
interface/js/app/upload.js | 20 +++++-----
interface/js/main.js | 2 +-
10 files changed, 139 insertions(+), 171 deletions(-)
diff --git a/.eslintrc.json b/.eslintrc.json
index 5ae3238ea..f76a38e21 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -33,7 +33,6 @@
"no-ternary": "off",
"object-shorthand": "off",
"one-var": ["error", { "initialized": "never" }],
- "prefer-arrow-callback": "off",
"prefer-named-capture-group": "off",
"prefer-object-has-own": "off",
"prefer-spread": "off",
diff --git a/interface/js/app/config.js b/interface/js/app/config.js
index 9f62c97db..1aaf71289 100644
--- a/interface/js/app/config.js
+++ b/interface/js/app/config.js
@@ -25,7 +25,7 @@
/* global require */
define(["jquery", "app/rspamd"],
- function ($, rspamd) {
+ ($, rspamd) => {
"use strict";
const ui = {};
@@ -34,7 +34,7 @@ define(["jquery", "app/rspamd"],
success: function (data) {
$("#actionsFormField").empty();
const items = [];
- $.each(data[0].data, function (i, item) {
+ $.each(data[0].data, (i, item) => {
const actionsOrder = ["greylist", "add header", "rewrite subject", "reject"];
const idx = actionsOrder.indexOf(item.action);
if (idx >= 0) {
@@ -52,14 +52,10 @@ define(["jquery", "app/rspamd"],
}
});
- items.sort(function (a, b) {
- return a.idx - b.idx;
- });
+ items.sort((a, b) => a.idx - b.idx);
$("#actionsFormField").html(
- items.map(function (e) {
- return e.html;
- }).join(""));
+ items.map((e) => e.html).join(""));
},
server: (checked_server === "All SERVERS") ? "local" : checked_server
});
@@ -68,9 +64,7 @@ define(["jquery", "app/rspamd"],
ui.saveActions = function (server) {
function descending(arr) {
let desc = true;
- const filtered = arr.filter(function (el) {
- return el !== null;
- });
+ const filtered = arr.filter((el) => el !== null);
for (let i = 0; i < filtered.length - 1; i++) {
if (filtered[i + 1] >= filtered[i]) {
desc = false;
@@ -125,7 +119,7 @@ define(["jquery", "app/rspamd"],
$("#modalBody").empty();
const $tbody = $("<tbody>");
- $.each(data, function (i, item) {
+ $.each(data, (i, item) => {
let $td = '<td><span class="badge text-bg-secondary">Read</span></td>';
if (!(item.editable === false || rspamd.read_only)) {
$td = $($td).append(' <span class="badge text-bg-success">Write</span>');
@@ -178,7 +172,7 @@ define(["jquery", "app/rspamd"],
'"></' + editor[mode].elt + ">").appendTo("#modalBody");
if (editor[mode].codejar) {
- require(["codejar", "linenumbers", "prism"], function (CodeJar, withLineNumbers, Prism) {
+ require(["codejar", "linenumbers", "prism"], (CodeJar, withLineNumbers, Prism) => {
jar = new CodeJar(
document.querySelector("#editor"),
withLineNumbers((el) => Prism.highlightElement(el))
@@ -207,7 +201,7 @@ define(["jquery", "app/rspamd"],
});
return false;
});
- $("#modalDialog").on("hidden.bs.modal", function () {
+ $("#modalDialog").on("hidden.bs.modal", () => {
if (editor[mode].codejar) {
jar.destroy();
$(".codejar-wrap").remove();
@@ -216,10 +210,10 @@ define(["jquery", "app/rspamd"],
}
});
- $("#saveActionsBtn").on("click", function () {
+ $("#saveActionsBtn").on("click", () => {
ui.saveActions();
});
- $("#saveActionsClusterBtn").on("click", function () {
+ $("#saveActionsClusterBtn").on("click", () => {
ui.saveActions("All SERVERS");
});
@@ -241,10 +235,10 @@ define(["jquery", "app/rspamd"],
server: server
});
}
- $("#modalSave").on("click", function () {
+ $("#modalSave").on("click", () => {
saveMap();
});
- $("#modalSaveAll").on("click", function () {
+ $("#modalSaveAll").on("click", () => {
saveMap("All SERVERS");
});
diff --git a/interface/js/app/graph.js b/interface/js/app/graph.js
index a661d4a19..2fc00a457 100644
--- a/interface/js/app/graph.js
+++ b/interface/js/app/graph.js
@@ -26,7 +26,7 @@
/* global FooTable */
define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
- function ($, rspamd, D3Evolution, D3Pie, d3) {
+ ($, rspamd, D3Evolution, D3Pie, d3) => {
"use strict";
const rrd_pie_config = {
@@ -96,17 +96,17 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
}
function getRrdSummary(json, scaleFactor) {
- const xExtents = d3.extent(d3.merge(json), function (d) { return d.x; });
+ const xExtents = d3.extent(d3.merge(json), (d) => d.x);
const timeInterval = xExtents[1] - xExtents[0];
let total = 0;
- const rows = json.map(function (curr, i) {
+ const rows = json.map((curr, i) => {
// Time intervals that don't have data are excluded from average calculation as d3.mean()ignores nulls
- const avg = d3.mean(curr, function (d) { return d.y; });
+ const avg = d3.mean(curr, (d) => d.y);
// To find an integral on the whole time interval we need to convert nulls to zeroes
// eslint-disable-next-line no-bitwise
- const value = d3.mean(curr, function (d) { return Number(d.y); }) * timeInterval / scaleFactor ^ 0;
- const yExtents = d3.extent(curr, function (d) { return d.y; });
+ const value = d3.mean(curr, (d) => Number(d.y)) * timeInterval / scaleFactor ^ 0;
+ const yExtents = d3.extent(curr, (d) => d.y);
total += value;
return {
@@ -139,22 +139,20 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
{name: "max", title: "Maximum, <span class=\"unit\">" + unit + "</span>", defaultContent: ""},
{name: "last", title: "Last, " + unit},
],
- rows: rows.map(function (curr, i) {
- return {
- options: {
- style: {
- color: graph_options.legend.entries[i].color
- }
- },
- value: curr
- };
- }, [])
+ rows: rows.map((curr, i) => ({
+ options: {
+ style: {
+ color: graph_options.legend.entries[i].color
+ }
+ },
+ value: curr
+ }), [])
});
}
function drawRrdTable(rows, unit) {
if (Object.prototype.hasOwnProperty.call(rspamd.tables, "rrd_summary")) {
- $.each(rspamd.tables.rrd_summary.rows.all, function (i, row) {
+ $.each(rspamd.tables.rrd_summary.rows.all, (i, row) => {
row.val(rows[i], false, true);
});
} else {
@@ -169,12 +167,12 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
if (data) {
// Autoranging
let scaleFactor = 1;
- const yMax = d3.max(d3.merge(data), function (d) { return d.y; });
+ const yMax = d3.max(d3.merge(data), (d) => d.y);
if (yMax < 1) {
scaleFactor = 60;
unit = "msg/min";
- data.forEach(function (s) {
- s.forEach(function (d) {
+ data.forEach((s) => {
+ s.forEach((d) => {
if (d.y !== null) { d.y *= scaleFactor; }
});
});
@@ -205,14 +203,14 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
success: function (req_data) {
let data = null;
const neighbours_data = req_data
- .filter(function (d) { return d.status; }) // filter out unavailable neighbours
- .map(function (d) { return d.data; });
+ .filter((d) => d.status) // filter out unavailable neighbours
+ .map((d) => d.data);
if (neighbours_data.length === 1) {
[data] = neighbours_data;
} else {
let time_match = true;
- neighbours_data.reduce(function (res, curr, _, arr) {
+ neighbours_data.reduce((res, curr, _, arr) => {
if ((curr[0][0].x !== res[0][0].x) ||
(curr[0][curr[0].length - 1].x !== res[0][res[0].length - 1].x)) {
time_match = false;
@@ -224,16 +222,10 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
});
if (time_match) {
- data = neighbours_data.reduce(function (res, curr) {
- return curr.map(function (action, j) {
- return action.map(function (d, i) {
- return {
- x: d.x,
- y: (res[j][i].y === null) ? d.y : res[j][i].y + d.y
- };
- });
- });
- });
+ data = neighbours_data.reduce((res, curr) => curr.map((action, j) => action.map((d, i) => ({
+ x: d.x,
+ y: (res[j][i].y === null) ? d.y : res[j][i].y + d.y
+ }))));
}
}
updateWidgets(data);
@@ -247,11 +239,11 @@ define(["jquery", "app/rspamd", "d3evolution", "d3pie", "d3", "footable"],
// Handling mouse events on overlapping elements
- $("#rrd-pie").mouseover(function () {
+ $("#rrd-pie").mouseover(() => {
$("#rrd-pie,#rrd-pie-tooltip").css("z-index", "200");
$("#rrd-table_toggle").css("z-index", "300");
});
- $("#rrd-table_toggle").mouseover(function () {
+ $("#rrd-table_toggle").mouseover(() => {
$("#rrd-pie,#rrd-pie-tooltip").css("z-index", "0");
$("#rrd-table_toggle").css("z-index", "0");
});
diff --git a/interface/js/app/history.js b/interface/js/app/history.js
index 568c69763..26b2e96a6 100644
--- a/interface/js/app/history.js
+++ b/interface/js/app/history.js
@@ -25,7 +25,7 @@
/* global FooTable */
define(["jquery", "app/rspamd", "d3", "footable"],
- function ($, rspamd, d3) {
+ ($, rspamd, d3) => {
"use strict";
const ui = {};
let prevVersion = null;
@@ -37,15 +37,13 @@ define(["jquery", "app/rspamd", "d3", "footable"],
$("#selSymOrder_history, label[for='selSymOrder_history']").hide();
- $.each(data, function (i, item) {
+ $.each(data, (i, item) => {
item.time = rspamd.unix_time_format(item.unix_time);
rspamd.preprocess_item(item);
item.symbols = Object.keys(item.symbols)
- .map(function (key) {
- return item.symbols[key];
- })
+ .map((key) => item.symbols[key])
.sort(compare)
- .map(function (e) { return e.name; })
+ .map((e) => e.name)
.join(", ");
item.time = {
value: rspamd.unix_time_format(item.unix_time),
@@ -324,9 +322,7 @@ define(["jquery", "app/rspamd", "d3", "footable"],
rspamd.query("history", {
success: function (req_data) {
function differentVersions(neighbours_data) {
- const dv = neighbours_data.some(function (e) {
- return e.version !== neighbours_data[0].version;
- });
+ const dv = neighbours_data.some((e) => e.version !== neighbours_data[0].version);
if (dv) {
rspamd.alertMessage("alert-error",
"Neighbours history backend versions do not match. Cannot display history.");
@@ -336,16 +332,14 @@ define(["jquery", "app/rspamd", "d3", "footable"],
}
const neighbours_data = req_data
- .filter(function (d) { return d.status; }) // filter out unavailable neighbours
- .map(function (d) { return d.data; });
+ .filter((d) => d.status) // filter out unavailable neighbours
+ .map((d) => d.data);
if (neighbours_data.length && !differentVersions(neighbours_data)) {
let data = {};
const [{version}] = neighbours_data;
if (version) {
data.rows = [].concat.apply([], neighbours_data
- .map(function (e) {
- return e.rows;
- }));
+ .map((e) => e.rows));
data.version = version;
$("#legacy-history-badge").hide();
} else {
@@ -363,7 +357,7 @@ define(["jquery", "app/rspamd", "d3", "footable"],
} else {
rspamd.destroyTable("history");
// Is there a way to get an event when the table is destroyed?
- setTimeout(function () {
+ setTimeout(() => {
rspamd.initHistoryTable(data, items, "history", get_history_columns(data), false);
}, 200);
}
@@ -421,14 +415,10 @@ define(["jquery", "app/rspamd", "d3", "footable"],
rspamd.query("errors", {
success: function (data) {
const neighbours_data = data
- .filter(function (d) {
- return d.status;
- }) // filter out unavailable neighbours
- .map(function (d) {
- return d.data;
- });
+ .filter((d) => d.status) // filter out unavailable neighbours
+ .map((d) => d.data);
const rows = [].concat.apply([], neighbours_data);
- $.each(rows, function (i, item) {
+ $.each(rows, (i, item) => {
item.ts = {
value: rspamd.unix_time_format(item.ts),
options: {
@@ -445,7 +435,7 @@ define(["jquery", "app/rspamd", "d3", "footable"],
});
$("#updateErrors").off("click");
- $("#updateErrors").on("click", function (e) {
+ $("#updateErrors").on("click", (e) => {
e.preventDefault();
ui.getErrors();
});
@@ -456,14 +446,14 @@ define(["jquery", "app/rspamd", "d3", "footable"],
rspamd.bindHistoryTableEventHandlers("history", 8);
$("#updateHistory").off("click");
- $("#updateHistory").on("click", function (e) {
+ $("#updateHistory").on("click", (e) => {
e.preventDefault();
ui.getHistory();
});
// @reset history log
$("#resetHistory").off("click");
- $("#resetHistory").on("click", function (e) {
+ $("#resetHistory").on("click", (e) => {
e.preventDefault();
if (!confirm("Are you sure you want to reset history log?")) { // eslint-disable-line no-alert
return;
diff --git a/interface/js/app/rspamd.js b/interface/js/app/rspamd.js
index 64eab27a0..1fac8b939 100644
--- a/interface/js/app/rspamd.js
+++ b/interface/js/app/rspamd.js
@@ -27,7 +27,7 @@
define(["jquery", "nprogress", "stickytabs", "visibility",
"bootstrap", "fontawesome"],
-function ($, NProgress) {
+($, NProgress) => {
"use strict";
const ui = {
chartLegend: [
@@ -92,8 +92,8 @@ function ($, NProgress) {
}
function disconnect() {
- [graphs, tables].forEach(function (o) {
- Object.keys(o).forEach(function (key) {
+ [graphs, tables].forEach((o) => {
+ Object.keys(o).forEach((key) => {
o[key].destroy();
delete o[key];
});
@@ -139,7 +139,7 @@ function ($, NProgress) {
let timeLeft = interval;
$("#countdown").text("00:00");
- timer_id.countdown = Visibility.every(1000, 1000, function () {
+ timer_id.countdown = Visibility.every(1000, 1000, () => {
timeLeft -= 1000;
$("#countdown").text(new Date(timeLeft).toISOString().substr(14, 5));
if (timeLeft <= 0) Visibility.stop(timer_id.countdown);
@@ -151,7 +151,7 @@ function ($, NProgress) {
countdown(refreshInterval);
if (!refreshInterval) return;
- timer_id[timer] = Visibility.every(refreshInterval, function () {
+ timer_id[timer] = Visibility.every(refreshInterval, () => {
countdown(refreshInterval);
if ($("#refresh").attr("disabled")) return;
$("#refresh").attr("disabled", true).addClass("disabled", true);
@@ -170,7 +170,7 @@ function ($, NProgress) {
require(["app/stats"], (module) => {
const refreshInterval = $(".dropdown-menu a.active.preset").data("value");
setAutoRefresh(refreshInterval, "status",
- function () { return module.statWidgets(graphs, checked_server); });
+ () => module.statWidgets(graphs, checked_server));
if (id !== "#autoRefresh") module.statWidgets(graphs, checked_server);
$(".preset").show();
@@ -192,7 +192,7 @@ function ($, NProgress) {
refreshInterval = null;
}
setAutoRefresh(refreshInterval, "throughput",
- function () { return module.draw(graphs, neighbours, checked_server, selData); });
+ () => module.draw(graphs, neighbours, checked_server, selData));
if (id !== "#autoRefresh") module.draw(graphs, neighbours, checked_server, selData);
$(".preset").hide();
@@ -223,7 +223,7 @@ function ($, NProgress) {
}
const refreshInterval = $(".dropdown-menu a.active.history").data("value");
setAutoRefresh(refreshInterval, "history",
- function () { return getHistoryAndErrors(); });
+ () => getHistoryAndErrors());
if (id !== "#autoRefresh") getHistoryAndErrors();
$(".preset").hide();
@@ -237,7 +237,7 @@ function ($, NProgress) {
default:
}
- setTimeout(function () {
+ setTimeout(() => {
// Do not enable Refresh button until AJAX requests to all neighbours are finished
if (tab_id === "#history_nav") navBarControls = $(navBarControls).not("#refresh");
@@ -292,11 +292,9 @@ function ($, NProgress) {
function sort_symbols(o, compare_function) {
return Object.keys(o)
- .map(function (key) {
- return o[key];
- })
+ .map((key) => o[key])
.sort(compare_function)
- .map(function (e) { return e.str; })
+ .map((e) => e.str)
.join("<br>\n");
}
@@ -316,7 +314,7 @@ function ($, NProgress) {
success: function (neighbours_status) {
$("#selSrv").empty();
$("#selSrv").append($('<option value="All SERVERS">All SERVERS</option>'));
- neighbours_status.forEach(function (e) {
+ neighbours_status.forEach((e) => {
$("#selSrv").append($('<option value="' + e.name + '">' + e.name + "</option>"));
if (checked_server === e.name) {
$('#selSrv [value="' + e.name + '"]').prop("selected", true);
@@ -351,7 +349,7 @@ function ($, NProgress) {
"<strong>" + alertText + "</strong>");
$(".notification-area").append(a);
- setTimeout(function () {
+ setTimeout(() => {
$(a).fadeTo(500, 0).slideUp(500, function () {
$(this).alert("close");
});
@@ -371,12 +369,11 @@ function ($, NProgress) {
const xhr = $.ajaxSettings.xhr();
// Download progress
if (req_url !== "neighbours") {
- xhr.addEventListener("progress", function (e) {
+ xhr.addEventListener("progress", (e) => {
if (e.lengthComputable) {
neighbours_status[ind].percentComplete = e.loaded / e.total;
- const percentComplete = neighbours_status.reduce(function (prev, curr) {
- return curr.percentComplete ? curr.percentComplete + prev : prev;
- }, 0);
+ const percentComplete = neighbours_status
+ .reduce((prev, curr) => (curr.percentComplete ? curr.percentComplete + prev : prev), 0);
NProgress.set(percentComplete / neighbours_status.length);
}
}, false);
@@ -409,8 +406,8 @@ function ($, NProgress) {
}
},
complete: function (jqXHR) {
- if (neighbours_status.every(function (elt) { return elt.checked; })) {
- if (neighbours_status.some(function (elt) { return elt.status; })) {
+ if (neighbours_status.every((elt) => elt.checked)) {
+ if (neighbours_status.some((elt) => elt.status)) {
if (o.success) {
o.success(neighbours_status, jqXHR);
} else {
@@ -429,7 +426,7 @@ function ($, NProgress) {
req_params.method = o.method;
}
if (o.params) {
- $.each(o.params, function (k, v) {
+ $.each(o.params, (k, v) => {
req_params[k] = v;
});
}
@@ -470,7 +467,7 @@ function ($, NProgress) {
})
.modal("show");
- $("#connectForm").off("submit").on("submit", function (e) {
+ $("#connectForm").off("submit").on("submit", (e) => {
e.preventDefault();
const password = $("#connectPassword").val();
@@ -546,7 +543,7 @@ function ($, NProgress) {
ui.query = function (url, options) {
// Force options to be an object
const o = options || {};
- Object.keys(o).forEach(function (option) {
+ Object.keys(o).forEach((option) => {
if (["complete", "data", "error", "errorMessage", "errorOnceId", "headers", "method", "params", "server",
"statusCode", "success"]
.indexOf(option) < 0) {
@@ -575,14 +572,14 @@ function ($, NProgress) {
neighbours = data;
}
neighbours_status = [];
- $.each(neighbours, function (ind) {
+ $.each(neighbours, (ind) => {
neighbours_status.push({
name: ind,
host: neighbours[ind].host,
url: neighbours[ind].url,
});
});
- $.each(neighbours_status, function (ind) {
+ $.each(neighbours_status, (ind) => {
queryServer(neighbours_status, ind, url, o);
});
},
@@ -610,7 +607,7 @@ function ($, NProgress) {
function change_symbols_order(order) {
$(".btn-sym-" + table + "-" + order).addClass("active").siblings().removeClass("active");
const compare_function = get_compare_function(table);
- $.each(tables[table].rows.all, function (i, row) {
+ $.each(tables[table].rows.all, (i, row) => {
const cell_val = sort_symbols(ui.symbols[table][i], compare_function);
row.cells[symbolsCol].val(cell_val, false, true);
});
@@ -690,7 +687,7 @@ function ($, NProgress) {
text: self.def
})).appendTo($form_grp);
- $.each(self.actions, function (i, action) {
+ $.each(self.actions, (i, action) => {
self.$action.append($("<option/>").text(action));
});
},
@@ -738,7 +735,7 @@ function ($, NProgress) {
},
on: {
"expand.ft.row": function (e, ft, row) {
- setTimeout(function () {
+ setTimeout(() => {
const detail_row = row.$el.next();
const order = getSelector("selSymOrder_" + table);
detail_row.find(".btn-sym-" + table + "-" + order)
@@ -761,14 +758,12 @@ function ($, NProgress) {
"`": "`",
"=": "="
};
- return String(string).replace(htmlEscaper, function (match) {
- return htmlEscapes[match];
- });
+ return String(string).replace(htmlEscaper, (match) => htmlEscapes[match]);
};
ui.preprocess_item = function (item) {
function escape_HTML_array(arr) {
- arr.forEach(function (d, i) { arr[i] = ui.escapeHTML(d); });
+ arr.forEach((d, i) => { arr[i] = ui.escapeHTML(d); });
}
for (const prop in item) {
@@ -779,7 +774,7 @@ function ($, NProgress) {
escape_HTML_array(item[prop]);
break;
case "symbols":
- Object.keys(item.symbols).forEach(function (key) {
+ Object.keys(item.symbols).forEach((key) => {
const sym = item.symbols[key];
if (!sym.name) {
sym.name = key;
@@ -833,7 +828,7 @@ function ($, NProgress) {
$("#selSymOrder_" + table + ", label[for='selSymOrder_" + table + "']").show();
$.each(data.rows,
- function (i, item) {
+ (i, item) => {
function more(p) {
const l = item[p].length;
return (l > rcpt_lim) ? " … (" + l + ")" : "";
@@ -870,7 +865,7 @@ function ($, NProgress) {
}
ui.preprocess_item(item);
- Object.values(item.symbols).forEach(function (sym) {
+ Object.values(item.symbols).forEach((sym) => {
sym.str = '<span class="symbol-default ' + get_symbol_class(sym.name, sym.score) + '"><strong>';
if (sym.description) {
@@ -930,7 +925,7 @@ function ($, NProgress) {
num_rows === rows_total) {
return callback();
} else if (--i) {
- setTimeout(function () {
+ setTimeout(() => {
ui.waitForRowsDisplayed(table, rows_total, callback, i);
}, 500);
}
@@ -988,10 +983,10 @@ function ($, NProgress) {
}).attr("title", function () {
return $(this).attr("data-original-title");
});
- $("#settings").on("click", function (e) {
+ $("#settings").on("click", (e) => {
e.preventDefault();
});
- $("#settings").on("inserted.bs.popover", function () {
+ $("#settings").on("inserted.bs.popover", () => {
selected_locale = localStorage.getItem("selected_locale") || "browser";
custom_locale = localStorage.getItem("custom_locale") || "";
validateLocale();
@@ -1006,19 +1001,19 @@ function ($, NProgress) {
localStorage.setItem("selected_locale", selected_locale);
validateLocale();
});
- $(document).on("input", localeTextbox, function () {
+ $(document).on("input", localeTextbox, () => {
custom_locale = $(localeTextbox).val();
validateLocale(true);
});
- $(document).on("input", ajaxTimeoutBox, function () {
+ $(document).on("input", ajaxTimeoutBox, () => {
ajaxSetup($(ajaxTimeoutBox).val(), false, true);
});
- $(document).on("click", ".popover #settings-popover #ajax-timeout-restore", function () {
+ $(document).on("click", ".popover #settings-popover #ajax-timeout-restore", () => {
ajaxSetup(null, true, true);
});
// Dismiss Bootstrap popover by clicking outside
- $("body").on("click", function (e) {
+ $("body").on("click", (e) => {
$(".popover").each(function () {
if (
// Popover's descendant
@@ -1031,15 +1026,15 @@ function ($, NProgress) {
});
}());
- $("#selData").change(function () {
+ $("#selData").change(() => {
tabClick("#throughput_nav");
});
- $(document).ajaxStart(function () {
+ $(document).ajaxStart(() => {
$("#refresh > svg").addClass("fa-spin");
});
- $(document).ajaxComplete(function () {
- setTimeout(function () {
*** OUTPUT TRUNCATED, 347 LINES SKIPPED ***
More information about the Commits
mailing list