From: Alexander Moisseev Date: Sun, 22 Jul 2018 12:13:19 +0000 (+0300) Subject: [WebUI] Do not execute `on_success` callback X-Git-Tag: 1.7.9~63^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=refs%2Fpull%2F2363%2Fhead;p=rspamd.git [WebUI] Do not execute `on_success` callback if all requests to neighbours failed --- diff --git a/interface/js/app/rspamd.js b/interface/js/app/rspamd.js index 5d2fd682a..2d82a99c7 100644 --- a/interface/js/app/rspamd.js +++ b/interface/js/app/rspamd.js @@ -402,16 +402,9 @@ function ($, d3pie, visibility, tab_stat, tab_graph, tab_config, if (jQuery.isEmptyObject(json)) { neighbours_status[ind].status = false; // serv does not work } else { - neighbours_status[ind].status = true; // serv does not work + neighbours_status[ind].status = true; // serv works neighbours_status[ind].data = json; } - if (neighbours_status.every(function (elt) { return elt.checked; })) { - if (on_success) { - on_success(neighbours_status); - } else { - alertMessage("alert-success", "Request completed"); - } - } }, error: function (jqXHR, textStatus, errorThrown) { neighbours_status[ind].status = false; @@ -423,16 +416,20 @@ function ($, d3pie, visibility, tab_stat, tab_graph, tab_config, alertMessage("alert-error", "Cannot receive data from " + neighbours_status[ind].host + ": " + errorThrown); } - if (neighbours_status.every( - function (elt) { return elt.checked; })) { - if (on_success) { - on_success(neighbours_status); + }, + complete: function () { + if (neighbours_status.every(function (elt) { return elt.checked; })) { + if (neighbours_status.some(function (elt) { return elt.status; })) { + if (on_success) { + on_success(neighbours_status); + } else { + alertMessage("alert-success", "Request completed"); + } } else { - alertMessage("alert-success", "Request completed"); + alertMessage("alert-error", "Request failed"); } } } - // error display }; if (params) { $.each(params, function (k, v) {