- `LoopMeasurementChart.tsx` und `TDRChart.tsx` erstellt für separate Diagramm-Darstellungen.
- Neue Struktur unter `/components/modules/kue705FO/charts/` eingeführt.
- `ChartModal.tsx` bleibt für generelle Nutzung erhalten.
- Erhöhte Wartbarkeit und Modularität durch Trennung der Chart-Komponenten.
- Implementierung einer Funktion zum Abrufen aller JSON-Objekte von `/0` bis kein 404-Fehler auftritt.
- Parsing der Daten in ein einheitliches JSON-Format.
- Filterung der Daten nach dem ausgewählten Datumsbereich.
- Ausgabe der Daten in der Konsole zur besseren Debugging-Kontrolle.
- Behebung von Fehlern bei der API-Kommunikation.
- Initialwerte für `vonDatum` und `bisDatum` in `LoopTDRChartActionBar.tsx` gesetzt.
- `DateRangePicker.tsx` überarbeitet, um direkt das ausgewählte Datum zu setzen.
- API-Filterung nach Unix-Zeitstempel (`getTime()`) implementiert.
- Fehler behoben: Daten aus `json-server` erscheinen jetzt korrekt in der UI.
- Verbesserte `console.log()`-Ausgaben für Debugging:
- API-URL (`📡 API URL:`)
- Rohdaten (`📥 Rohdaten (vor Filterung):`)
- Gefilterte Daten (`🔍 Gefilterte Daten:`)
- API-URL passt sich automatisch an die Umgebung an:
- In Development (`npm run dev`) wird `http://localhost:3001/kabelueberwachung` genutzt.
- In Production (`npm run build && npm start`) wird `window.location.origin/CPL` verwendet.
- Verbesserte Fehlerbehandlung für JSON-Antworten implementiert.
- **Hinweis:** Für die lokale Entwicklung wird `json-server` benötigt.
Installation: `npm install -g json-server`
Starten: `json-server --watch mockData.json --port 3001`
- TDRPopup-Komponente in `components/modules/KueModal/TDRPopup.tsx` ausgelagert
- Importpfad in Kue705FO angepasst, um die ausgelagerte Komponente korrekt zu referenzieren
- Redux-State durch lokalen useState für `isAdminLoggedIn` ersetzt.
- Token-Validierung über sessionStorage mit useEffect hinzugefügt.
- Alle Redux-Selectoren entfernt und unnötige Importe bereinigt.
- Verbesserte Fehlerbehandlung bei der Token-Verarbeitung, um Abstürze zu vermeiden.
- Logout-Funktionalität vereinfacht, indem sessionStorage direkt geleert wird.
- Passwort-Hashing und Salt-Erzeugung mit bcrypt implementiert, um sensible Daten wie Passwörter sicher zu speichern.
- Token-Generierung und -Validierung eingeführt, um den Admin-Status zu überprüfen und temporäre Zugriffsrechte zu verwalten.
- Benutzername-Vergleich case-insensitive gestaltet, um Benutzerfreundlichkeit zu verbessern.
- Token wird in localStorage gespeichert und die Ablaufzeit überprüft, um Sicherheit und konsistente Sitzungen zu gewährleisten.
- Fehlerbehebungen und Code-Refactor durchgeführt, um Lesbarkeit und Wartbarkeit zu verbessern.
**Warum:**
- Passwort-Hashing und Salt schützen Passwörter vor direkten Angriffen (z. B. Brute-Force oder Datenlecks).
- Token-Handling ermöglicht eine sichere und flexible Verwaltung von Sitzungsinformationen.
- Verbesserungen erhöhen die Sicherheit und Benutzerfreundlichkeit des Admin-Bereichs.
- `generateToken`-Funktion implementiert, um Tokens mit Benutzerrollen zu erstellen
- `decodeToken` in `KueModal` hinzugefügt, um das Token zu dekodieren und den "Firmware Update"-Button für Admin-Rolle bedingt anzuzeigen
- Fehlerbehandlung für ungültige Tokens in localStorage verbessert
- Sicherstellung der Token-Dekodierung für Admin-Zugriffskontrolle in Entwicklungs- und Produktionsumgebung
- Moved `handleSave`, `handleChange`, `handleDisplayEinschalten`, `handleSetDateTime`, `handleClearDatabase`, and `handleReboot` to separate handler files for better modularity and code organization.
- Updated imports in `KueModal.jsx` and `SettingsModal.jsx` to use new handler files.
- Improved code readability and maintainability by organizing functions into dedicated handler modules.
- handleSave in separate Datei handle-save.js ausgelagert, um KueModal-Komponente modularer und wartbarer zu gestalten
- handleSaveWrapper in KueModal hinzugefügt, um Parameter an handleSave zu übergeben
- KueModal umgestaltet, um Funktionen und Redux-Dispatch klarer zu organisieren
- Konsistente Verwendung von Parametern und State-Updates für sauberen Codefluss