From 530dc42ed3efeaefcaa5ac841978933d5f5bf1e8 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 25 Oct 2024 15:07:57 +0200 Subject: [PATCH] last20Messages.acp entfernt und nur Kai Dateien in js und angepasst benutzen --- components/Header.jsx | 123 +++++---------------- last20Messages.acp | 58 ---------- pages/dashboard.js | 60 ++++++---- pages/kabelueberwachung.js | 2 +- public/CPL/SERVICE/last20Messages.acp | 58 ---------- public/mockData/SERVICE/System.js | 33 +++--- public/mockData/SERVICE/last20Messages.acp | 58 ---------- utils/loadWindowVariables.js | 98 ++++++++++++---- 8 files changed, 159 insertions(+), 331 deletions(-) delete mode 100644 last20Messages.acp delete mode 100644 public/CPL/SERVICE/last20Messages.acp delete mode 100644 public/mockData/SERVICE/last20Messages.acp diff --git a/components/Header.jsx b/components/Header.jsx index f26ef45..e74855e 100644 --- a/components/Header.jsx +++ b/components/Header.jsx @@ -10,8 +10,6 @@ function Header() { const [stationsname, setStationsname] = useState("Lädt..."); const [cplStatus, setCplStatus] = useState("Lädt..."); const [showSettingsModal, setShowSettingsModal] = useState(false); - - // Boolean-Flag, um sicherzustellen, dass der console.log nur einmal ausgeführt wird const [logOnce, setLogOnce] = useState(false); useEffect(() => { @@ -30,110 +28,49 @@ function Header() { window.location.href = "/offline.html"; }; - useEffect(() => { - if (typeof window !== "undefined") { - console.log("Lade Window-Variablen..."); - - loadWindowVariables() - .then(() => { - if (window.ip) { - setStationsname(window.deviceName || "Unbekannt"); - setCplStatus(window.hardware_version || "Unbekannt"); - } else { - console.error("window.ip ist nicht verfügbar."); - } - }) - .catch((error) => { - console.error("Fehler beim Laden der Variablen:", error); - }); - } - }, [isClient]); - useEffect(() => { if (isClient && !logOnce) { - const files = [ - "de.js", - "kueConfig.js", - "kueData.js", - "kueDetailTdr.js", - "Start.js", - "System.js", - ]; - const environment = process.env.NEXT_PUBLIC_NODE_ENV || "production"; + const script = document.createElement("script"); - let filesLoadedCount = 0; // Zähle die Anzahl der erfolgreich geladenen Dateien + // Laden von nur System.js abhängig von der Umgebung + script.src = + environment === "production" + ? `/CPL?/CPL/SERVICE/System.js` + : `/mockData/SERVICE/System.js`; - files.forEach((file) => { - const script = document.createElement("script"); + script.async = true; + script.onload = () => { + console.log(`System.js wurde erfolgreich geladen.`); - if (environment === "production") { - script.src = `/CPL?/CPL/SERVICE/${file}`; + // Systemvariablen überprüfen und zuweisen + if (window.deviceName) { + setStationsname(window.deviceName || "Unbekannt"); + setCplStatus(window.hardware_version || "Unbekannt"); } else { - script.src = `/mockData/SERVICE/${file}`; + console.error("Systemvariablen sind nicht vollständig verfügbar."); } - script.async = true; - script.onload = () => { - console.log(`${file} wurde erfolgreich geladen.`); - filesLoadedCount++; + console.log(" Header Systemvariablen geladen:", { + deviceName: window.deviceName, + ip: window.ip, + mac1: window.mac1, + mac2: window.mac2, + subnet: window.subnet, + gateway: window.gateway, + datetime: window.datetime, + }); - // Wenn alle Dateien geladen sind und der logOnce noch false ist, führe den log aus - if (filesLoadedCount === files.length && !logOnce) { - console.log("Systemvariablen geladen:", { - last20Messages: window.last20Messages, - deviceName: window.deviceName, - mac1: window.mac1, - mac2: window.mac2, - ip: window.ip, - subnet: window.subnet, - gateway: window.gateway, - datetime: window.datetime, - de: window.de, - counter: window.counter, - flutter: window.flutter, - kueOnline: window.kueOnline, - kueID: window.kueID, - kueValid: window.kueValid, - kueAlarm1: window.kueAlarm1, - kueAlarm2: window.kueAlarm2, - kueRes: window.kueRes, - kueCableBreak: window.kueCableBreak, - kueGroundFault: window.kueGroundFault, - kueLimit1: window.kueLimit1, - kueLimit2Low: window.kueLimit2Low, - kueLimit2High: window.kueLimit2High, - kueDelay1: window.kueDelay1, - kueLoopInterval: window.kueLoopInterval, - kueVersion: window.kueVersion, - tdrAtten: window.tdrAtten, - tdrPulse: window.tdrPulse, - tdrSpeed: window.tdrSpeed, - tdrAmp: window.tdrAmp, - tdrTrigger: window.tdrTrigger, - tdrLocation: window.tdrLocation, - tdrActive: window.tdrActive, - kueOverflow: window.kueOverflow, - kue100V: window.kue100V, - kueResidence: window.kueResidence, - tdrLastMeasurement: window.tdrLastMeasurement, - kueBooting: window.kueBooting, - appVersion: window.appVersion, - }); - setLogOnce(true); // Setze das Flag auf true, damit der log nicht erneut ausgeführt wird - } - }; - script.onerror = (error) => - console.error(`Fehler beim Laden von ${file}:`, error); - document.head.appendChild(script); - }); + setLogOnce(true); + }; + + script.onerror = (error) => + console.error("Fehler beim Laden von System.js:", error); + + document.head.appendChild(script); } }, [isClient, logOnce]); - useEffect(() => { - console.log("Environment:", process.env.NEXT_PUBLIC_NODE_ENV); - }, []); - if (!isClient) return null; return ( diff --git a/last20Messages.acp b/last20Messages.acp deleted file mode 100644 index 3c8f960..0000000 --- a/last20Messages.acp +++ /dev/null @@ -1,58 +0,0 @@ -// Letzte 20 Meldungen für dashboard.html Start.acp -var last20Messages = `<%=SAM01%>`; - -//System.acp -var appVersion="<%=SAV00%>"; -var deviceName="<%=SAN01%>"; -var mac1="<%=SEM01%>"; -var mac2="<%=SEM02%>"; -var ip="<%=SEI01%>"; -var subnet="<%=SES01%>"; -var gateway="<%=SEG01%>"; -var datetime="<%=SCL01%>"; - -//de.acp -var de=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>]; -var counter=[<%=DEC80%>,<%=DEC81%>,<%=DEC82%>,<%=DEC83%>]; -var flutter=[<%=DEF80%>,<%=DEF81%>,<%=DEF82%>,<%=DEF83%>]; - -//kueConfig.acp -var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>]; -var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>]; -var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>]; - -//kueDetail.acp -var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>]; -var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>]; -var kueValid=[<%=KIV80%>,<%=KIV81%>,<%=KIV82%>,<%=KIV83%>]; -var kueAlarm1=[<%=KIA80%>,<%=KIA81%>,<%=KIA82%>,<%=KIA83%>]; -var kueAlarm2=[<%=KRA80%>,<%=KRA81%>,<%=KRA82%>,<%=KRA83%>]; - -var kueRes=[<%=KRM80%>,<%=KRM81%>,<%=KRM82%>,<%=KRM83%>]; - -var kueCableBreak=[<%=KSC80%>,<%=KSC81%>,<%=KSC82%>,<%=KSC83%>]; -var kueGroundFault=[<%=KSG80%>,<%=KSG81%>,<%=KSG82%>,<%=KSG83%>]; - -var kueLimit1=[<%=KIG80%>,<%=KIG81%>,<%=KIG82%>,<%=KIG83%>]; -var kueLimit2Low=[<%=KRG80%>,<%=KRG81%>,<%=KRG82%>,<%=KRG83%>]; -var kueLimit2High=[<%=KRH80%>,<%=KRH81%>,<%=KRH82%>,<%=KRH83%>]; -var kueDelay1=[<%=KID80%>,<%=KID81%>,<%=KID82%>,<%=KID83%>]; -var kueLoopInterval=[<%=KRI80%>,<%=KRI81%>,<%=KRI82%>,<%=KRI83%>]; - -var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>]; -var kueVersion=[<%=KSV80%>,<%=KSV81%>,<%=KSV82%>,<%=KSV83%>]; -var kueName=[<%=KSA80%>,<%=KSA81%>,<%=KSA82%>,<%=KSA83%>]; - - -var tdrAtten=[<%=KTD80%>,<%=KTD81%>,<%=KTD82%>,<%=KTD83%>]; -var tdrPulse=[<%=KTP80%>,<%=KTP81%>,<%=KTP82%>,<%=KTP83%>]; -var tdrSpeed=[<%=KTS80%>,<%=KTS81%>,<%=KTS82%>,<%=KTS83%>]; -var tdrAmp=[<%=KTA80%>,<%=KTA81%>,<%=KTA82%>,<%=KTA83%>]; -var tdrTrigger=[<%=KTE80%>,<%=KTE81%>,<%=KTE82%>,<%=KTE83%>]; -var tdrLocation=[<%=KTF80%>,<%=KTF81%>,<%=KTF82%>,<%=KTF83%>]; -var tdrActive=[<%=KTX80%>,<%=KTX81%>,<%=KTX82%>,<%=KTX83%>]; -var kueOverflow=[<%=KIW80%>,<%=KIW81%>,<%=KIW82%>,<%=KIW83%>]; -var kue100V=[<%=KSS80%>,<%=KSS81%>,<%=KSS82%>,<%=KSS83%>]; -var kueResidence=[<%=KSN80%>,<%=KSN81%>,<%=KSN82%>,<%=KSN83%>]; -var tdrLastMeasurement=[<%=KTL80%>,<%=KTL81%>,<%=KTL82%>,<%=KTL83%>]; -var kueBooting=[<%=KSB80%>,<%=KSB81%>,<%=KSB82%>,<%=KSB83%>]; \ No newline at end of file diff --git a/pages/dashboard.js b/pages/dashboard.js index 704cce2..1de6016 100644 --- a/pages/dashboard.js +++ b/pages/dashboard.js @@ -123,33 +123,47 @@ function Dashboard() { }); }, []); useEffect(() => { + // Funktion zur Wiederholten Überprüfung der Variablen + const checkVariablesLoaded = () => { + return new Promise((resolve, reject) => { + const intervalId = setInterval(() => { + if ( + window.kueAlarm1 && + Array.isArray(window.kueAlarm1) && + window.kueAlarm2 && + Array.isArray(window.kueAlarm2) + ) { + clearInterval(intervalId); + resolve(); + } else { + console.log("Warten auf die Variablen kueAlarm1 und kueAlarm2..."); + } + }, 500); // Überprüfung alle 500ms + + // Timeout, falls die Variablen nach einer bestimmten Zeit nicht geladen sind + setTimeout(() => { + clearInterval(intervalId); + reject( + new Error( + "Die Variablen kueAlarm1 und kueAlarm2 wurden nicht innerhalb der erwarteten Zeit geladen." + ) + ); + }, 10000); // Timeout nach 10 Sekunden + }); + }; + loadWindowVariables() + .then(() => checkVariablesLoaded()) .then(() => { - // Debug-Ausgaben für kueAlarm1 und kueAlarm2 - //console.log("kueAlarm1 Data: ", window.kueAlarm1); - //console.log("kueAlarm2 Data: ", window.kueAlarm2); - - if (window.kueAlarm1 && Array.isArray(window.kueAlarm1)) { - //console.log("kueAlarm1 ist ein Array:", window.kueAlarm1); - } else { - console.error("kueAlarm1 ist kein Array oder nicht definiert."); - setError( - "Konnte kueAlarm1 nicht finden oder es ist kein gültiges Array." - ); - } - - if (window.kueAlarm2 && Array.isArray(window.kueAlarm2)) { - //console.log("kueAlarm2 ist ein Array:", window.kueAlarm2); - } else { - console.error("kueAlarm2 ist kein Array oder nicht definiert."); - setError( - "Konnte kueAlarm2 nicht finden oder es ist kein gültiges Array." - ); - } + // Variablen sind jetzt verfügbar + console.log("kueAlarm1 und kueAlarm2 sind geladen:", { + kueAlarm1: window.kueAlarm1, + kueAlarm2: window.kueAlarm2, + }); }) .catch((error) => { - console.error("Fehler beim Laden des Skripts:", error); - setError(error); + console.error("Fehler beim Laden der Variablen oder Timeout:", error); + setError("Konnte die Variablen nicht laden: " + error.message); }); }, []); diff --git a/pages/kabelueberwachung.js b/pages/kabelueberwachung.js index efac1cc..f1bc4ef 100644 --- a/pages/kabelueberwachung.js +++ b/pages/kabelueberwachung.js @@ -40,7 +40,7 @@ function Kabelueberwachung() { } }) .catch((error) => { - console.error("Fehler beim Laden der Variablen:", error); + //console.error("Fehler beim Laden der Variablen:", error); }); }, []); diff --git a/public/CPL/SERVICE/last20Messages.acp b/public/CPL/SERVICE/last20Messages.acp deleted file mode 100644 index 3c8f960..0000000 --- a/public/CPL/SERVICE/last20Messages.acp +++ /dev/null @@ -1,58 +0,0 @@ -// Letzte 20 Meldungen für dashboard.html Start.acp -var last20Messages = `<%=SAM01%>`; - -//System.acp -var appVersion="<%=SAV00%>"; -var deviceName="<%=SAN01%>"; -var mac1="<%=SEM01%>"; -var mac2="<%=SEM02%>"; -var ip="<%=SEI01%>"; -var subnet="<%=SES01%>"; -var gateway="<%=SEG01%>"; -var datetime="<%=SCL01%>"; - -//de.acp -var de=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>]; -var counter=[<%=DEC80%>,<%=DEC81%>,<%=DEC82%>,<%=DEC83%>]; -var flutter=[<%=DEF80%>,<%=DEF81%>,<%=DEF82%>,<%=DEF83%>]; - -//kueConfig.acp -var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>]; -var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>]; -var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>]; - -//kueDetail.acp -var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>]; -var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>]; -var kueValid=[<%=KIV80%>,<%=KIV81%>,<%=KIV82%>,<%=KIV83%>]; -var kueAlarm1=[<%=KIA80%>,<%=KIA81%>,<%=KIA82%>,<%=KIA83%>]; -var kueAlarm2=[<%=KRA80%>,<%=KRA81%>,<%=KRA82%>,<%=KRA83%>]; - -var kueRes=[<%=KRM80%>,<%=KRM81%>,<%=KRM82%>,<%=KRM83%>]; - -var kueCableBreak=[<%=KSC80%>,<%=KSC81%>,<%=KSC82%>,<%=KSC83%>]; -var kueGroundFault=[<%=KSG80%>,<%=KSG81%>,<%=KSG82%>,<%=KSG83%>]; - -var kueLimit1=[<%=KIG80%>,<%=KIG81%>,<%=KIG82%>,<%=KIG83%>]; -var kueLimit2Low=[<%=KRG80%>,<%=KRG81%>,<%=KRG82%>,<%=KRG83%>]; -var kueLimit2High=[<%=KRH80%>,<%=KRH81%>,<%=KRH82%>,<%=KRH83%>]; -var kueDelay1=[<%=KID80%>,<%=KID81%>,<%=KID82%>,<%=KID83%>]; -var kueLoopInterval=[<%=KRI80%>,<%=KRI81%>,<%=KRI82%>,<%=KRI83%>]; - -var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>]; -var kueVersion=[<%=KSV80%>,<%=KSV81%>,<%=KSV82%>,<%=KSV83%>]; -var kueName=[<%=KSA80%>,<%=KSA81%>,<%=KSA82%>,<%=KSA83%>]; - - -var tdrAtten=[<%=KTD80%>,<%=KTD81%>,<%=KTD82%>,<%=KTD83%>]; -var tdrPulse=[<%=KTP80%>,<%=KTP81%>,<%=KTP82%>,<%=KTP83%>]; -var tdrSpeed=[<%=KTS80%>,<%=KTS81%>,<%=KTS82%>,<%=KTS83%>]; -var tdrAmp=[<%=KTA80%>,<%=KTA81%>,<%=KTA82%>,<%=KTA83%>]; -var tdrTrigger=[<%=KTE80%>,<%=KTE81%>,<%=KTE82%>,<%=KTE83%>]; -var tdrLocation=[<%=KTF80%>,<%=KTF81%>,<%=KTF82%>,<%=KTF83%>]; -var tdrActive=[<%=KTX80%>,<%=KTX81%>,<%=KTX82%>,<%=KTX83%>]; -var kueOverflow=[<%=KIW80%>,<%=KIW81%>,<%=KIW82%>,<%=KIW83%>]; -var kue100V=[<%=KSS80%>,<%=KSS81%>,<%=KSS82%>,<%=KSS83%>]; -var kueResidence=[<%=KSN80%>,<%=KSN81%>,<%=KSN82%>,<%=KSN83%>]; -var tdrLastMeasurement=[<%=KTL80%>,<%=KTL81%>,<%=KTL82%>,<%=KTL83%>]; -var kueBooting=[<%=KSB80%>,<%=KSB81%>,<%=KSB82%>,<%=KSB83%>]; \ No newline at end of file diff --git a/public/mockData/SERVICE/System.js b/public/mockData/SERVICE/System.js index a133129..1a38833 100644 --- a/public/mockData/SERVICE/System.js +++ b/public/mockData/SERVICE/System.js @@ -1,16 +1,17 @@ -var appVersion="0.02"; -var deviceName="CPLV4_Maschen"; -var mac1="0 48 86 81 46 143"; -var mac2="0 48 86 81 46 144"; -var ip="10.10.0.243"; -var subnet="255.255.255.0"; -var gateway="10.10.0.1"; -var datetime="23.10.24 15:10:28 Uhr"; -var opcState="1"; -var opcSessions="0"; -var opcName="CPL V4 OPC UA Application Deutsche Bahne']'])"; -var ntp1="192.53.103.108"; -var ntp2="0.0.0.0"; -var ntp3="0.0.0.0"; -var ntpTimezone="2"; -var ntpActive="1"; \ No newline at end of file +var appVersion = "0.02"; +var deviceName = "CPLV4_Maschen"; +var mac1 = "0 48 86 81 46 143"; +var mac2 = "0 48 86 81 46 144"; +var ip = "10.10.0.243"; +var subnet = "255.255.255.0"; +var gateway = "10.10.0.1"; +var datetime = "23.10.24 15:10:28 Uhr"; +var opcState = "1"; +var opcSessions = "0"; +//var opcName="CPL V4 OPC UA Application Deutsche Bahne']'])"; +var opcName = "CPL V4 OPC UA Application Deutsche Bahne"; +var ntp1 = "192.53.103.108"; +var ntp2 = "0.0.0.0"; +var ntp3 = "0.0.0.0"; +var ntpTimezone = "2"; +var ntpActive = "1"; diff --git a/public/mockData/SERVICE/last20Messages.acp b/public/mockData/SERVICE/last20Messages.acp deleted file mode 100644 index d89d4fa..0000000 --- a/public/mockData/SERVICE/last20Messages.acp +++ /dev/null @@ -1,58 +0,0 @@ -// Letzte 20 Meldungen für dashboard.html Start.acp -var last20Messages = `16750035012024-10-23 15:08:58:000Modul 26 Isofehler kommend116749032012024-10-23 15:07:24:000Modul 23 Isofehler gehend016748035012024-10-23 15:01:52:000Modul 26 Isofehler gehend016747028012024-10-23 15:01:30:000Modul 19 Isofehler kommend116746035012024-10-23 14:57:33:000Modul 26 Isofehler kommend116745032012024-10-23 14:56:54:000Modul 23 Isofehler kommend116744028012024-10-23 14:51:01:000Modul 19 Isofehler gehend016743035012024-10-23 14:50:46:000Modul 26 Isofehler gehend016742032012024-10-23 14:49:49:000Modul 23 Isofehler gehend016741035012024-10-23 14:49:13:000Modul 26 Isofehler kommend116740028012024-10-23 14:45:28:000Modul 19 Isofehler kommend116739032012024-10-23 14:44:16:000Modul 23 Isofehler kommend116738035012024-10-23 14:42:08:000Modul 26 Isofehler gehend016737032012024-10-23 14:37:10:000Modul 23 Isofehler gehend016736035012024-10-23 14:35:20:000Modul 26 Isofehler kommend116735012012024-10-23 14:31:44:000Modul 03 Isofehler kommend116734017012024-10-23 14:30:14:000Modul 08 Isofehler kommend116733035012024-10-23 14:28:15:000Modul 26 Isofehler gehend016732033012024-10-23 14:26:23:000Modul 24 Isofehler kommend116731012012024-10-23 14:24:58:000Modul 03 Isofehler gehend0`; - -//System.acp -var appVersion="0.02"; -var deviceName="CPLV4_Maschen"; -var mac1="0 48 86 81 46 143"; -var mac2="0 48 86 81 46 144"; -var ip="10.10.0.243"; -var subnet="255.255.255.0"; -var gateway="10.10.0.1"; -var datetime="23.10.24 15:10:27 Uhr"; - -//de.acp -var de=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var counter=[0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000]; -var flutter=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; - -//kueConfig.acp -var kueOnline=[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]; -var kueID=['FTZ_2','B23','Kabel 3','Kabel 4','Kabel 5','Kabel 6','FTZ4562','Kabel 8','12344','Kabel 10','Kabel 11','Kabel 12','Kabel 13','Kabel 14','Kabel 15','H56-77','Kabel 17','Kabel 18','Kabel 19','Kabel 20','Kabel 21','Kabel 22','Kabel 23','Kabel 24','Kabel 25','Kabel 26','Kabel 27','Kabel 28','Kabel 29','Kabel 30','Kabel 31','Kabel 32']; -var kueIso=[10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.50,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.50,10.00,10.00,10.00,10.00,10.00,10.50,10.00,200.00,200.00,200.00,200.00]; - -//kueDetail.acp -var kueOnline=[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]; -var kueIso=[10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.50,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.50,10.00,10.00,10.00,10.00,10.00,10.50,10.00,200.00,200.00,200.00,200.00]; -var kueValid=[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]; -var kueAlarm1=[1,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,1,0,0,0,0,0,0]; -var kueAlarm2=[1,0,1,0,0,0,1,1,0,1,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0]; - -var kueRes=[0.000,0.612,0.000,0.645,0.821,0.970,0.000,0.000,1.452,0.000,0.734,0.370,0.566,0.000,0.738,0.684,1.166,0.595,0.000,1.651,1.180,1.387,1.214,0.000,1.475,0.615,0.494,1.217,65.000,65.000,65.000,65.000]; - -var kueCableBreak=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1]; -var kueGroundFault=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; - -var kueLimit1=[10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00]; -var kueLimit2Low=[0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100,0.100]; -var kueLimit2High=[1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000]; -var kueDelay1=[420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420,420]; -var kueLoopInterval=[6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6]; - -var kueID=['FTZ_2','B23','Kabel 3','Kabel 4','Kabel 5','Kabel 6','FTZ4562','Kabel 8','12344','Kabel 10','Kabel 11','Kabel 12','Kabel 13','Kabel 14','Kabel 15','H56-77','Kabel 17','Kabel 18','Kabel 19','Kabel 20','Kabel 21','Kabel 22','Kabel 23','Kabel 24','Kabel 25','Kabel 26','Kabel 27','Kabel 28','Kabel 29','Kabel 30','Kabel 31','Kabel 32']; -var kueVersion=[419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419,419]; -var kueName=['Kabel_2','Petersfehn','Kabel 3','Kabel 4','Kabel 5','Kabel 6','Melanie','Kabel 8','Merle','Kabel 10','Kabel 11','Kabel 12','Kabel 13','Kabel 14','Kabel 15','Daniela','Kabel 17','Kabel 18','Kabel 19','Kabel 20','Kabel 21','Kabel 22','Kabel 23','Kabel 24','Kabel 25','Kabel 26','Kabel 27','Kabel 28','Kabel 29','Kabel 30','Kabel 31','Kabel 32']; - - -var tdrAtten=[2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0,2.0]; -var tdrPulse=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var tdrSpeed=[100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100]; -var tdrAmp=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var tdrTrigger=[80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80]; -var tdrLocation=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var tdrActive=[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var kueOverflow=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1]; -var kue100V=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var kueResidence=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; -var tdrLastMeasurement=['2024-10-17 07:51:54:000','2024-09-30 08:38:50:000','?','?','?','?','?','?','2024-09-30 08:36:43:000','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?']; -var kueBooting=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; \ No newline at end of file diff --git a/utils/loadWindowVariables.js b/utils/loadWindowVariables.js index 7fb2927..077d2ce 100644 --- a/utils/loadWindowVariables.js +++ b/utils/loadWindowVariables.js @@ -2,41 +2,91 @@ export async function loadWindowVariables() { return new Promise((resolve, reject) => { - // Funktion zum Laden eines Skripts und Setzen der `window`-Variablen + // Überprüfen, ob die wichtigsten Variablen bereits geladen sind + const requiredVars = [ + "last20Messages", + "deviceName", + "mac1", + "mac2", + "ip", + "subnet", + "gateway", + "datetime", + "de", + "counter", + "flutter", + "kueOnline", + "kueID", + "kueValid", + "kueAlarm1", + "kueAlarm2", + "kueRes", + "kueCableBreak", + "kueGroundFault", + "kueLimit1", + "kueLimit2Low", + "kueLimit2High", + "kueDelay1", + "kueLoopInterval", + "kueVersion", + "tdrAtten", + "tdrPulse", + "tdrSpeed", + "tdrAmp", + "tdrTrigger", + "tdrLocation", + "tdrActive", + "kueOverflow", + "kue100V", + "kueResidence", + "tdrLast", + "kueBooting", + "appVersion", + ]; + + const missingVars = requiredVars.filter( + (variable) => window[variable] === undefined + ); + + // Wenn alle Variablen bereits vorhanden sind, auflösen und keine weiteren Skripte laden + if (missingVars.length === 0) { + console.log("Alle Systemvariablen sind bereits geladen."); + resolve(); + return; + } + const loadScript = (src) => { return new Promise((resolve, reject) => { const script = document.createElement("script"); - //script.src = `/CPL?${src}`; - // Dynamischer Pfad basierend auf der Umgebung - const environment = process.env.NEXT_PUBLIC_NODE_ENV || "production"; // Fallback auf 'production' - - if (environment === "production") { - script.src = `/CPL?/CPL/SERVICE/${src}`; // Produktions-Pfad - } else { - script.src = `/mockData/SERVICE/${src}`; // Entwicklungs-Pfad - } + const environment = process.env.NEXT_PUBLIC_NODE_ENV || "production"; + script.src = + environment === "production" + ? `/CPL?/CPL/SERVICE/${src}` + : `/mockData/SERVICE/${src}`; script.async = true; - script.onload = () => { - resolve(); - }; - script.onerror = (error) => { - reject(error); - }; + script.onload = resolve; + script.onerror = reject; document.head.appendChild(script); }); }; - // Lade das Skript, das alle Variablen enthält - loadScript("last20Messages.acp") + // Nur die fehlenden Skripte laden + const scripts = [ + "de.js", + "kueConfig.js", + "kueData.js", + "kueDetailTdr.js", + "Start.js", + "System.js", + ]; + + Promise.all(scripts.map(loadScript)) .then(() => { - // Prüfen, ob alle Variablen verfügbar sind und sie in die Konsole ausgeben - if (window.last20Messages) { - resolve(); - } else { - reject(new Error("Konnte last20Messages nicht finden.")); - } + console.log("Alle Systemvariablen wurden erfolgreich geladen."); + resolve(); }) .catch((error) => { + console.error("Fehler beim Laden eines Skripts:", error); reject(error); }); });