summaryrefslogtreecommitdiffstats
path: root/modules-available/dnbd3/templates/page-serverlist.html
diff options
context:
space:
mode:
authorSimon Rettberg2018-03-29 10:47:58 +0200
committerSimon Rettberg2018-03-29 10:47:58 +0200
commitaeb96b5b7019b2f0bc40ed699dc2877a8729a06b (patch)
tree9b7a24770cfad934489d1c5f23f136b17a4c41d4 /modules-available/dnbd3/templates/page-serverlist.html
parent[dnbd3] Clarify firewall setting (diff)
downloadslx-admin-aeb96b5b7019b2f0bc40ed699dc2877a8729a06b.tar.gz
slx-admin-aeb96b5b7019b2f0bc40ed699dc2877a8729a06b.tar.xz
slx-admin-aeb96b5b7019b2f0bc40ed699dc2877a8729a06b.zip
[dnbd3] Fix dnbd3 reboot status feedback
Closes #3276
Diffstat (limited to 'modules-available/dnbd3/templates/page-serverlist.html')
-rw-r--r--modules-available/dnbd3/templates/page-serverlist.html24
1 files changed, 18 insertions, 6 deletions
diff --git a/modules-available/dnbd3/templates/page-serverlist.html b/modules-available/dnbd3/templates/page-serverlist.html
index a51e9723..65e4d6ea 100644
--- a/modules-available/dnbd3/templates/page-serverlist.html
+++ b/modules-available/dnbd3/templates/page-serverlist.html
@@ -389,20 +389,32 @@ document.addEventListener('DOMContentLoaded', function () {
}
$t.html('<span class="glyphicon glyphicon-refresh slx-rotation"></span>');
var sid = rebootServerId;
+ var taskId = false;
+ var lastText;
var query = function() {
+ data = {"token": TOKEN, "action": "reboot", "server": sid};
+ if (taskId !== false) data['taskid'] = taskId;
$.ajax({
- "data": {"token": TOKEN, "action": "reboot", "server": sid},
+ "data": data,
"method": "POST",
- "dataType": "text",
+ "dataType": "json",
"url": "?do=dnbd3"
}).done(function (data) {
- $t.text(data);
- if (data.indexOf('REBOOTING') !== -1 || data.indexOf('CONNECTING') !== -1) {
+ if (!data || !data.taskId) return;
+ if (taskId === false) taskId = data.taskId;
+ if (data.error) data.rebootStatus += ' (' + data.error + ')';
+ if (data.rebootStatus !== lastText) {
+ $t.empty().text(data.rebootStatus);
+ }
+ if (data.taskStatus === 'TASK_PROCESSING' || data.taskStatus === 'TASK_WAITING') {
setTimeout(query, 5000);
- $t.append($('<span class="glyphicon glyphicon-refresh slx-rotation"></span>'));
+ if (data.rebootStatus !== lastText) {
+ $t.append($('<span class="glyphicon glyphicon-refresh slx-rotation"></span>'));
+ }
}
+ lastText = data.rebootStatus;
}).fail(function () {
- $.text('Failed');
+ $t.text('Failed');
});
};
query();