- Added blinking icon functionality to "PST-M prüfen" alarm status for consistency with other alarm statuses.
- Refactored display logic to prioritize "PST-M prüfen" with icon blink effect in the interval.
- Ensured proper interval clearing for consistent display across alarm updates.
- useEffect-Hook erweitert, um die Alarmanzeige mit blinkendem Text und Icon zu versehen.
- Verschiedene Alarmstatus (kueCableBreak, kueGroundFault, kueAlarm1, kueAlarm2, kueOverflow) triggern abwechselnde Anzeige von Text und Icon.
- Icon erscheint 2 Sekunden lang, gefolgt von 5 Sekunden Text zur verbesserten Benutzererkennung.
- Cleanup für Intervall hinzugefügt, um Speicherlecks zu vermeiden.
- Dynamischer Import von chartjs-plugin-zoom im `useEffect` hinzugefügt, um Zugriff auf `window` im Server-Side-Build zu vermeiden.
- Zustandsvariable `zoomPluginLoaded` eingeführt, um sicherzustellen, dass das Plugin nur im Client geladen wird.
- Verwende `useRef` für Canvas-Referenz, um direkten Zugriff auf das Chart-Element zu ermöglichen.
- Optimierung der Chart-Erstellung, um Build-Fehler aufgrund fehlender `window`-Objekte zu verhindern.
- Chart.js um das Zoom-Plugin erweitert, um eine bessere Datenanalyse zu ermöglichen.
- Scrollen und Pinch-Zoom für Zoom- und Pan-Funktion aktiviert (x- und y-Achse).
- Nutzer können nun durch die Daten navigieren und gezielt Bereiche vergrößern, was die Übersichtlichkeit erhöht.
- loopDisplay zeigt nun den Schleifenwiderstand oder die TDR-Entfernung an, basierend auf dem aktiven Button ("Schleife" oder "TDR").
- Der Button "Schleife" setzt den Wert im loopDisplay auf den Schleifenwiderstand.
- Der Button "TDR" setzt den Wert im loopDisplay auf die Entfernung (tdrLocation).
- Zustand `sessionExpired` im `_app.js` hinzugefügt, um den Ablauf der Sitzung oder Verbindungsprobleme zu überwachen.
- Intervall in `loadWindowVariables` angepasst, um die Verbindung alle 10 Sekunden zu überprüfen.
- Warnmeldung angezeigt, wenn die Sitzung abgelaufen ist oder die Verbindung unterbrochen wurde.
- Benutzer wird informiert, wenn eine erneute Anmeldung oder ein Neuladen der Seite erforderlich ist.
- Beim Speichern werden die aktuellen Werte als neue Originalwerte gesetzt, um sicherzustellen, dass die geänderten Werte beim erneuten Öffnen des Modals angezeigt werden.
- Anpassung im `handleSave`-Handler vorgenommen, um die Originalwerte nach erfolgreichem Speichern zu aktualisieren.
- Verbesserung der Benutzerfreundlichkeit durch Vermeidung des Zurücksetzens der geänderten Werte.
- Anpassung in loadWindowVariables.js: %20-Zeichen in kueID-Werten werden beim Kopieren aus dem window-Objekt automatisch durch tatsächliche Leerzeichen ersetzt.
- Sicherstellung, dass die Werte im Redux-Store korrekt und leserlich gespeichert werden, ohne URL-kodierte Leerzeichen.
Verhindern des automatischen Zurücksetzens von Eingabefeldern im Modal
- Werte aus Redux werden nur noch beim erstmaligen Öffnen des Modals in die State-Variablen übernommen.
- Änderungen in den Eingabefeldern bleiben bestehen, ohne durch automatische Updates überschrieben zu werden.
- Anpassung der useEffect-Abhängigkeiten, um eine stabilere Bearbeitung zu ermöglichen.
- Die Werte aus Redux werden nun nur beim Öffnen des Modals in die lokalen State-Variablen übernommen.
- Während der Bearbeitung bleibt der Zustand der Eingabefelder stabil, ohne alle 10 Sekunden zurückgesetzt zu werden.
- Dies ermöglicht eine bequemere Bearbeitung, ohne dass Änderungen automatisch überschrieben werden.
- Ersetzt `window`-Zugriff durch `IndexedDB` in der `Dashboard`-Komponente, um Produktionsprobleme zu lösen.
- Aktualisiert `KabelModulStatus`, um Alarm- und Fehlerstatus für jeden Slot über IndexedDB zu beziehen.
- Fügt zusätzliche States für Alarme (`kueAlarm1`, `kueAlarm2`) und Erdungsfehler (`kueGroundFault`) hinzu und lädt diese aus IndexedDB.
- Verbesserte Stabilität und Wartbarkeit durch den Einsatz asynchroner IndexedDB-Aufrufe statt globaler Variablen.
- Werte wie IP, Subnetz, Gateway, letzte 20 Meldungen und kueVersion aus IndexedDB geladen und im Dashboard angezeigt
- Direktzugriff auf IndexedDB-Variable `getFromIndexedDB` implementiert, um Produktions-Importprobleme zu vermeiden
- State-Handling und Lade-Intervall hinzugefügt, um Daten alle 10 Sekunden zu aktualisieren
- Ersetzt window-basierte Variablen durch Daten aus IndexedDB für eine robustere und skalierbare Datenverwaltung
- Datenwerte wie deviceName, macAddress, IP usw. aus IndexedDB abgerufen und in den State geladen, um dynamische Aktualisierungen zu ermöglichen.
- Direktimplementierung von getFromIndexedDB im Component Code, um Produktionsimport-Probleme zu umgehen.
- Originalwerte beim ersten Laden gespeichert, um spätere Änderungen zu überprüfen und zu übertragen.
- Verbesserte Benutzerführung mit Zustandskontrollen und gezieltem Datenabruf bei Komponenten-Mount.
- Direkte Implementierung von `getFromIndexedDB` in Header.jsx hinzugefügt, um Importprobleme zu vermeiden
- Intervall auf 5 Sekunden funktioniert
Dies behebt das Problem, dass deviceName in der Produktion als "Unbekannt" angezeigt wurden, bedingt durch Timing-Unterschiede in IndexedDB.
- Added direct implementation of `getFromIndexedDB` in Header.jsx to avoid import issues
- Increased polling interval to 10 seconds to prevent timing issues in data fetching
- Added console logs to verify data loading process and debug potential undefined values
This resolves issues where deviceName and kueVersion were showing as "Unbekannt" in production due to IndexedDB timing differences.
- Added parallel saving of required variables to both IndexedDB and localStorage using Promise.all for improved performance.
- Implemented a recursive check for missing variables with a retry mechanism for reliable loading.
- Enhanced error handling for script loading and storage processes.
- Streamlined loading scripts sequentially and storing in IndexedDB and localStorage upon successful loading.
- Implementiert PST-M Ausfall als höchste Priorität in der Alarmanzeige.
- Hinzugefügt: "PST-M prüfen" wird rot angezeigt, wie bei Aderbruch, Erdschluss, Isolationsfehler und Schleifenfehler.
- Einheit "ISO MOhm" wird nur angezeigt, wenn kein Alarm aktiv ist.
- ">200 MOhm" wird nun als neutraler Wert angezeigt und nicht in Rot, da es auf eine gute Kabelisolation hinweist.
- Rote Textfarbe bleibt auf Fehlerbeschränkungen wie Aderbruch, Erdschluss, Isolations- und Schleifenfehler begrenzt.
- Code-Bedingungen für die Prioritätsanzeige optimiert, um korrekte Farbzuordnung und Alarmauslösung sicherzustellen.