diff options
author | Simon Rettberg | 2018-03-29 10:47:58 +0200 |
---|---|---|
committer | Simon Rettberg | 2018-03-29 10:47:58 +0200 |
commit | aeb96b5b7019b2f0bc40ed699dc2877a8729a06b (patch) | |
tree | 9b7a24770cfad934489d1c5f23f136b17a4c41d4 /modules-available/dnbd3/templates/page-serverlist.html | |
parent | [dnbd3] Clarify firewall setting (diff) | |
download | slx-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.html | 24 |
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(); |