From c2363226678c286861b1059616e383f9a3f45748 Mon Sep 17 00:00:00 2001 From: Marcel Peterkau Date: Tue, 9 Jan 2024 22:51:45 +0100 Subject: [PATCH] reworked the WebUI-Websocket-Comm --- Software/data_src/index.htm | 55 +++++++++++++----------- Software/data_src/static/js/websocket.js | 39 +++++++++-------- Software/src/webui.cpp | 8 ++-- 3 files changed, 55 insertions(+), 47 deletions(-) diff --git a/Software/data_src/index.htm b/Software/data_src/index.htm index a02d35c..8713756 100644 --- a/Software/data_src/index.htm +++ b/Software/data_src/index.htm @@ -60,7 +60,7 @@

Tankinhalt verbleibend

-
0
@@ -71,7 +71,7 @@

aktueller Modus

- +

@@ -107,9 +107,9 @@
-
+
%TANK_REMAIN_CAPACITY%%
@@ -129,10 +129,10 @@

Entlüftung

- +
- +
Pulse
@@ -258,7 +258,10 @@
- + + +
@@ -279,7 +282,7 @@

-
+

Einstellungen Impulseingang

@@ -289,7 +292,7 @@
- +
mm
@@ -301,7 +304,7 @@
- +
mm
@@ -312,7 +315,7 @@
- +
"
@@ -323,7 +326,7 @@
- +
@@ -338,7 +341,7 @@
-
+

Einstellungen CAN-Bus

@@ -346,7 +349,9 @@
- + +
@@ -360,7 +365,7 @@
-
+

Einstellungen GPS

@@ -368,7 +373,7 @@
-
@@ -391,7 +396,7 @@
+ class="data-lubedistancenormal form-control" required="required">
m
@@ -403,7 +408,7 @@
+ class="data-lubedistancerain form-control" required="required">
m
@@ -427,7 +432,7 @@
-
ml @@ -439,7 +444,7 @@
-
% @@ -451,7 +456,7 @@
-
µl @@ -476,7 +481,7 @@
- + @@ -488,7 +493,7 @@
+ class="data-ledmaxbrightness form-control" required="required">
@@ -497,7 +502,7 @@
+ class="data-ledminbrightness form-control" required="required">
diff --git a/Software/data_src/static/js/websocket.js b/Software/data_src/static/js/websocket.js index b716116..9261683 100644 --- a/Software/data_src/static/js/websocket.js +++ b/Software/data_src/static/js/websocket.js @@ -141,24 +141,29 @@ function do_resize(textbox) { function fillValuesToHTML(dataset) { for (var key in dataset) { - var element = document.getElementById(key); + var key_prefixed = "data-" + key; + var elements = document.getElementsByClassName(key_prefixed); - if (element) { - if (element.type === "checkbox") { - // Wenn das Element ein Kontrollkästchen ist - element.checked = dataset[key] == 1 ? true : false; - } else if (element.tagName === "SELECT") { - // Wenn das Element ein Dropdown ist - setDropdownValue(element, dataset[key]); - } else if (element.classList.contains("progress-bar")) { - // Wenn das Element eine Fortschrittsleiste ist - updateProgressBar(element, dataset[key]); - } else if (element.classList.contains("removeable")) { - // Wenn das Element ein Settingsabschnitt-div ist - if (dataset[key] == 0) element.remove(); - } else { - // Standardmäßig für Textfelder und andere Elemente - element.value = dataset[key]; + if (elements.length > 0) { + for (var i = 0; i < elements.length; i++) { + var element = elements[i]; + + if (element.type === "checkbox") { + // Wenn das Element ein Kontrollkästchen ist + element.checked = dataset[key] == 1 ? true : false; + } else if (element.tagName === "SELECT") { + // Wenn das Element ein Dropdown ist + setDropdownValue(element, dataset[key]); + } else if (element.classList.contains("progress-bar")) { + // Wenn das Element eine Fortschrittsleiste ist + updateProgressBar(element, dataset[key]); + } else if (element.classList.contains("removeable")) { + // Wenn das Element ein Settingsabschnitt-div ist + if (dataset[key] == 0) element.remove(); + } else { + // Standardmäßig für Textfelder und andere Elemente + element.value = dataset[key]; + } } } } diff --git a/Software/src/webui.cpp b/Software/src/webui.cpp index ccc2aa0..cff7943 100644 --- a/Software/src/webui.cpp +++ b/Software/src/webui.cpp @@ -617,9 +617,9 @@ void Websocket_RefreshClientData_Status(uint32_t client_id, bool send_mapping) if (send_mapping) { const char mapping[] = "MAPPING_STATUS:" - "SystemStatus;" + "systemstatus;" "tankremain;" - "Odometer;"; + "odometer;"; if (client_id > 0) webSocket.text(client_id, mapping); @@ -668,7 +668,6 @@ void Websocket_RefreshClientData_Static(uint32_t client_id, bool send_mapping) "tirewidth;" "tireratio;" "tiredia;" - "DistancePerRevolution_mm;" "sourceselect;" "gpsbaud;" "cansource;" @@ -678,7 +677,7 @@ void Websocket_RefreshClientData_Static(uint32_t client_id, bool send_mapping) "showimpulse;" "showgps;" "showcan;" - "BleedingPulses;"; + "bleedingpulses;"; if (client_id > 0) webSocket.text(client_id, mapping); @@ -697,7 +696,6 @@ void Websocket_RefreshClientData_Static(uint32_t client_id, bool send_mapping) temp.concat(String(LubeConfig.TireWidth_mm) + ";"); temp.concat(String(LubeConfig.TireWidthHeight_Ratio) + ";"); temp.concat(String(LubeConfig.RimDiameter_Inch) + ";"); - temp.concat(String(LubeConfig.DistancePerRevolution_mm) + ";"); temp.concat(String(SpeedSourceString[LubeConfig.SpeedSource]) + ";"); temp.concat(String(GPSBaudRateString[LubeConfig.GPSBaudRate]) + ";"); temp.concat(String(CANSourceString[LubeConfig.CANSource]) + ";");