mumui/deployment/static/deployment/js/event_source.js
2023-09-22 16:42:34 +02:00

42 lines
1.3 KiB
JavaScript

var start = function (url) {
var es = new ReconnectingEventSource(url);
console.log("url: " + url);
es.onopen = function () {
console.log('connected');
};
es.addEventListener('stream-error', function (e) {
es.close();
message = JSON.parse(e.data);
console.log('stream error: ' + message.condition + ': ' + message.text);
}, false);
es.onerror = function (e) {
console.log('connection error');
};
// listening on `message` events and update the corresponding table line.
// If the status is `FAILED`, we reload the window to ensure a new csrf_token.
es.addEventListener('message', function (e) {
message = JSON.parse(e.data);
console.log("id: " + message.id);
console.log("status: " + message.status);
const tr = document.getElementById(message.id);
if (tr) {
var status = tr.querySelector("th[name='status']");
status.innerHTML = message.status;
var button = tr.querySelector("th[name='deploy']");
if (message.status == "SUCCESS") {
button.innerHTML = "";
}
if (message.status == "FAILED") {
window.location.reload();
}
}
}, false);
};