added websocket-driven notification-overlay
This commit is contained in:
@@ -69,53 +69,42 @@ function onMessage(event) {
|
||||
var data = event.data;
|
||||
console.log("ws_msg:" + event.data + "\n");
|
||||
|
||||
if (data.startsWith("DEBUG:")) {
|
||||
if (data.startsWith("NOTIFY:")) {
|
||||
var notify_data = data.slice(7).split(";")[1];
|
||||
var notify_type = data.slice(7).split(";")[0];
|
||||
showNotification(notify_data, notify_type);
|
||||
} else if (data.startsWith("DEBUG:")) {
|
||||
var addtext = data.slice(6);
|
||||
var livedebug_out = document.getElementById("livedebug-out");
|
||||
livedebug_out.value += addtext;
|
||||
livedebug_out.scrollTop = livedebug_out.scrollHeight;
|
||||
do_resize(livedebug_out);
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.startsWith("DTC:")) {
|
||||
} else if (data.startsWith("DTC:")) {
|
||||
const dtcs = data.slice(4);
|
||||
const dtcArray = dtcs.trim() !== "" ? dtcs.split(";").filter(Boolean) : [];
|
||||
|
||||
if (dtcArray[0] != "0") {
|
||||
processDTCNotifications(dtcArray);
|
||||
fillDTCTable(dtcArray);
|
||||
}
|
||||
return;
|
||||
}
|
||||
processDTCNotifications(dtcArray);
|
||||
fillDTCTable(dtcArray);
|
||||
|
||||
if (data.startsWith("MAPPING_STATUS:")) {
|
||||
} else if (data.startsWith("MAPPING_STATUS:")) {
|
||||
const data_sliced = data.slice(15);
|
||||
statusMapping = createMapping(data_sliced);
|
||||
}
|
||||
|
||||
if (data.startsWith("MAPPING_STATIC:")) {
|
||||
} else if (data.startsWith("MAPPING_STATIC:")) {
|
||||
const data_sliced = data.slice(15);
|
||||
staticMapping = createMapping(data_sliced);
|
||||
}
|
||||
|
||||
if (data.startsWith("STATUS:")) {
|
||||
} else if (data.startsWith("STATUS:")) {
|
||||
const data_sliced = data.slice(7);
|
||||
const result = processDataString(data_sliced, statusMapping);
|
||||
console.log("STATUS:");
|
||||
console.log(JSON.stringify(result, null, 2));
|
||||
fillValuesToHTML(result);
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.startsWith("STATIC:")) {
|
||||
} else if (data.startsWith("STATIC:")) {
|
||||
const data_sliced = data.slice(7);
|
||||
const result = processDataString(data_sliced, staticMapping);
|
||||
console.log("STATIC:");
|
||||
console.log(JSON.stringify(result, null, 2));
|
||||
fillValuesToHTML(result);
|
||||
overlay.style.display = "none";
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -221,3 +210,27 @@ function updateProgressBar(progressBar, value) {
|
||||
progressBar.style.width = value + "%";
|
||||
progressBar.textContent = value + "%";
|
||||
}
|
||||
|
||||
function showNotification(message, type) {
|
||||
// Erstellen Sie ein Bootstrap-Alert-Element
|
||||
var alertElement = $(
|
||||
'<div class="alert alert-' +
|
||||
type +
|
||||
' alert-dismissible fade show notification" role="alert">' +
|
||||
"<strong>" +
|
||||
message +
|
||||
"</strong>" +
|
||||
'<button type="button" class="close" data-dismiss="alert" aria-label="Close">' +
|
||||
'<span aria-hidden="true">×</span>' +
|
||||
"</button>" +
|
||||
"</div>"
|
||||
);
|
||||
|
||||
// Fügen Sie das Alert-Element dem Container hinzu
|
||||
$("#notification-container").append(alertElement);
|
||||
|
||||
// Nach 5 Sekunden das Alert-Element ausblenden
|
||||
setTimeout(function () {
|
||||
alertElement.alert("close");
|
||||
}, 5000);
|
||||
}
|
||||
|
Reference in New Issue
Block a user