- README.md für Offline-Betrieb und Kundenserver überarbeitet (ohne npm install)
- Benutzeranleitung und technische Themen nach /docs/guide/ ausgelagert
- Neue Dateien: env.md, mock-data.md, webservices.md, redux-zustand.md, project-structure.md, dependencies.md, user-guide.md
- Tabellenstruktur und Verlinkungen im README modernisiert
- Fokus auf klare Trennung: Entwickler-Doku vs. Kundenbereitstellung
- JSON-Dateien für Linienstatus, Stationsstatus, Systemdaten und Benutzerrechte unter /public/mocks/webservice/ abgelegt
- Struktur der Dateien an echte Webservice-Antworten angepasst (z. B. 'Statis' statt 'Status')
- Dienste wurden entsprechend auf Umschaltung zwischen Mock- und Echtbetrieb vorbereitet
- Ermöglicht lokale Entwicklung und Tests ohne Backend-Verbindung
- Hinzugefügt: __mocks__/webservice/
- gisLinesStatus.js
- gisStationsMeasurements.js
- gisStationsStaticDistrict.js
- gisStationsStatusDistrict.js
- gisSystemStatic.js
- userRights.js
- In allen fetch*Service-Dateien Umschaltung implementiert (über NEXT_PUBLIC_USE_MOCKS)
- Fallback auf Mock-Daten bei Entwicklung oder Offline-Modus
- Unterstützt schnelles UI-Testing und isolierte Feature-Entwicklung ohne Backend
- alle festen "/talas5/" Pfade entfernt
- dynamischer basePath für API-Links und Station öffnen
- README.md und CHANGELOG.md aktualisiert
- Version erhöht auf 1.1.188
- Mock-Verzeichnis und Umgebungsvariable entfernt
- README.md aktualisiert (kein Mockmodus mehr)
- Projekt verwendet jetzt ausschließlich reale Datenquellen (MySQL, TALAS.web)
- Version auf 1.1.186 erhöht
- config.js verwendet nun window.location und API_PORT_MODE zur URL-Ermittlung
- feste Konfiguration aus .env.local entfällt (bereinigt)
- neue Dokumentation: docs/frontend/config/config.md
- CHANGELOG.md aktualisiert (v1.1.76)
- setupPolylines.js und createAndSetDevices.js auf dynamische Link-Generierung umgestellt
- Entfernung von NEXT_PUBLIC_BASE_URL aus .env.local
- Verwendung von NEXT_PUBLIC_API_PORT_MODE zur Steuerung von :80 in Dev
- Neue Dokumentationen unter /docs/frontend/utils/{polylines,devices}/
- CHANGELOG.md und appVersion.js auf Version 1.1.75 aktualisiert
- NEXT_PUBLIC_API_PORT_3000 entfernt
- API-Aufrufe basieren jetzt auf window.location.hostname:3000
- kein Rebuild mehr bei IP-Änderung nötig
- .env.local aufgeräumt
- CHANGELOG.md auf 1.1.68 aktualisiert
- Entfernt `useRecoilState(mapLayersState)` und durch `useSelector(selectMapLayersState)` ersetzt.
- Alle `setMapLayersVisibility` durch `dispatch(setLayerVisibility(...))` ersetzt.
- LocalStorage-Handling für `mapLayersVisibility` mit Redux umgesetzt.
- Fehler "setMapLayersVisibility is not defined" behoben, indem `dispatch` verwendet wurde.
- Sicherstellung, dass `mapLayersSlice` im Redux-Store registriert ist.
- `NEXT_PUBLIC_API_PORT_3000` in `.env.local` definiert
- `poiTypesSlice.js` so angepasst, dass die API-URL dynamisch aus `.env.local` geladen wird
- Harte URL entfernt, jetzt konfigurierbar ohne Code-Änderung
- Erfordert Neustart von Next.js, um `.env.local` zu laden
- Leaflet `flyTo` für sanfte Zoom-Animationen implementiert.
- Zoom-Stufen auf max. 15 und min. 6 begrenzt.
- Dauer der Animation dynamisch auf 0.5s pro Zoomstufe gesetzt.
- Verbesserte Benutzererfahrung durch flüssige Zoom-Bewegungen.
- Fehlerhafte Verwendung von `useRouter()` in `fetchGisStationsStaticDistrict.js` behoben
- `idMap` und `idUser` in allen API-Requests über URL-Parameter gesichert
- Alle API-Endpunkte getestet und sichergestellt, dass sie korrekt JSON-Daten liefern
- Debugging-Logs hinzugefügt und Redux-Fehlermeldungen beseitigt
- Jetzt erhalten alle Redux-Stores (`gisStationsStaticDistrict`, `gisStationsStatusDistrict`, `gisStationsMeasurements`, `gisSystemStatic`) erfolgreich die Daten
✅ Alle GIS-Daten werden jetzt korrekt in Redux gespeichert
- API-Response für GisSystemStatic in Redux Store gespeichert
- Server-IP aus `.env.local` geladen (`NEXT_PUBLIC_API_BASE_URL`)
- `idMap` und `idUser` aus URL-Parametern extrahiert
- fetchGisSystemStatic angepasst für dynamische Werte
- Redux Store aktualisiert und getestet
- BASE_URL für Polyline-Links angepasst auf http://10.10.0.70/talas5/devices/
- Ursache war fehlende oder fehlerhafte NEXT_PUBLIC_BASE_URL aus .env.local
- Jetzt
- Sichtbarkeitsstatus für Kabelstrecken/Polylines wird jetzt zentral im Redux-Store verwaltet.
- Initialer Zustand wird aus localStorage gelesen und direkt in Redux gesetzt.
- DataSheet-Checkbox steuert Redux-Status und synchronisiert mit localStorage.
- MapComponent.js verwendet Redux-State direkt zur Steuerung von setupPolylines.
- setupPolylines.js ist jetzt komplett "dumm" und bekommt den Sichtbarkeitsstatus nur noch als Parameter.
- Konsistente Lösung für Initial-Laden, Checkbox-Wechsel und Map-Neuladen umgesetzt.
- Problem: Leaflet-Events besitzen kein preventDefault(), nur deren originalEvent (natives DOM-Event).
- Lösung: Zugriff auf event.originalEvent eingebaut, um Fehler beim Kontextmenü zu vermeiden.
- Test: Marker-Kontextmenü öffnet Popup jetzt korrekt, ohne Runtime Error.
- Verhindert Absturz der Anwendung, wenn die gis_lines-Tabelle fehlt
- Gibt stattdessen eine Warnung in der Konsole aus
- Stellt sicher, dass der Datenbankname dynamisch aus der .env-Datei geladen wird"
- Polylinien werden nur angezeigt, wenn die zugehörigen Stationen (CPLs) aktiv sind
- Redux speichert den Status der Stationen (1 = aktiv, 0 = inaktiv)
- setupPolylines.js überprüft jetzt direkt in Redux, ob eine Linie gezeichnet werden soll
- Entfernt den unnötigen activeLines-Parameter in MapComponent.js für eine bessere Struktur
- Optimierte Performance: Linien ändern sich dynamisch ohne Seiten-Reload
- `index.js` als Client-Komponente deklariert (`"use client"`) zur Vermeidung von SSR-Problemen.
- `useEffect` optimiert, um unendliche API-Requests durch `isMounted`-Check zu verhindern.
- `loadData()` angepasst, um API-Fehler korrekt abzufangen und erneute Ladeversuche zu vermeiden.
- Doppelte Registrierung von `poiReadFromDbTriggerAtom` durch HMR verhindert.
- Ungültige MySQL-Option `acquireTimeout` entfernt, um Verbindungsfehler zu beheben.
Diese Änderungen verhindern unerwartete Reloads und verbessern die Stabilität der Anwendung.
- GeocoderFeature als separates Modul implementiert und initialisiert.
- Feature Toggle für Geocoder in .env.local hinzugefügt (NEXT_PUBLIC_ENABLE_GEOCODER).
- Dynamische Aktivierung des Geocoders über MapComponent.js basierend auf Feature-Flag.
- Anpassungen zur Entfernung bzw. Anpassung der Fehlermeldung "Nothing found".
- Styling-Verbesserungen für das Suchfeld mit Tailwind CSS.