PS C:\Users\isa.LTW\Desktop\02.06.2025\NodeMap\02.06.2025 NodeMap> git push work tags
error: src refspec tags does not match any error: failed to push some refs to 'http://10.10.0.12:3000/ISA/nodeMap' PS C:\Users\isa.LTW\Desktop\02.06.2025\NodeMap\02.06.2025 NodeMap>
This commit is contained in:
14
CHANGELOG.md
14
CHANGELOG.md
@@ -4,6 +4,20 @@ Alle bedeutenden Änderungen an diesem Projekt werden in dieser Datei dokumentie
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## [1.1.211] – 2025-06-02
|
||||||
|
|
||||||
|
### Hinzugefügt
|
||||||
|
|
||||||
|
- Leaflet-Kontextmenü für Geräte-Marker (Stations/Geräte) aktiviert
|
||||||
|
- Menüpunkt „Station öffnen (Tab)“ erscheint nun direkt im Marker-Kontextmenü, basierend auf `marker.options.link`
|
||||||
|
- Redux-Abhängigkeit (`selectedDevice`) für Kontextmenü entfernt
|
||||||
|
|
||||||
|
### Geändert
|
||||||
|
|
||||||
|
- `addContextMenuToMarker` prüft nun direkt auf `marker.options.idDevice` und `link` anstatt globalen Zustand
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## [1.1.209] – 2025-06-02
|
## [1.1.209] – 2025-06-02
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|||||||
@@ -73,6 +73,10 @@ NEXT_PUBLIC_BASE_PATH=
|
|||||||
- Integration als iFrame in TALAS.web
|
- Integration als iFrame in TALAS.web
|
||||||
- Versionsanzeige über `.env.local`
|
- Versionsanzeige über `.env.local`
|
||||||
- Testdaten per Mock-API möglich (nur in der Entwicklungsumgebung)
|
- Testdaten per Mock-API möglich (nur in der Entwicklungsumgebung)
|
||||||
|
- Rechtsklick auf Geräte-Marker öffnet ein Kontextmenü mit:
|
||||||
|
- „Station öffnen (Tab)“
|
||||||
|
- Koordinaten anzeigen
|
||||||
|
- Zoom & Zentrieren
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -446,6 +450,7 @@ NEXT_PUBLIC_USE_MOCK_API=true
|
|||||||
- **Layer steuern:** GIS-Geräte-Layer (z. B. TALAS, WAGO, GMA) ein-/ausblenden über Checkboxen im rechten Panel (`MapLayersControlPanel`)
|
- **Layer steuern:** GIS-Geräte-Layer (z. B. TALAS, WAGO, GMA) ein-/ausblenden über Checkboxen im rechten Panel (`MapLayersControlPanel`)
|
||||||
- **Station auswählen:** Dropdown oben rechts
|
- **Station auswählen:** Dropdown oben rechts
|
||||||
- **Zentrieren:** Rechtsklick → "Hier zentrieren"
|
- **Zentrieren:** Rechtsklick → "Hier zentrieren"
|
||||||
|
- **Geräte-Kontextmenü:** Rechtsklick auf Marker → „Station öffnen (Tab)“
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
// /config/appVersion
|
// /config/appVersion
|
||||||
export const APP_VERSION = "1.1.211";
|
export const APP_VERSION = "1.1.212";
|
||||||
|
|||||||
@@ -12,3 +12,21 @@ Hilfsfunktionen zur Verwaltung des Kontextmenüs auf Kartenmarkern und Polylinie
|
|||||||
## Zweck
|
## Zweck
|
||||||
|
|
||||||
- Menüeinträge je nach Zustand und Marker-Art dynamisch generieren
|
- Menüeinträge je nach Zustand und Marker-Art dynamisch generieren
|
||||||
|
|
||||||
|
# 📌 Kontextmenü für Geräte-Marker (Leaflet)
|
||||||
|
|
||||||
|
Ab Version 1.1.20 verfügen alle Geräte-Marker über ein kontextbasiertes Leaflet-Menü.
|
||||||
|
|
||||||
|
## Inhalte
|
||||||
|
|
||||||
|
- "Station öffnen (Tab)" → Öffnet Geräte-URL in neuem Tab
|
||||||
|
- Koordinaten anzeigen
|
||||||
|
- Zoom-Optionen
|
||||||
|
- Zentrieren auf Marker
|
||||||
|
|
||||||
|
## Technische Umsetzung
|
||||||
|
|
||||||
|
- Datei: `contextMenuUtils.js`
|
||||||
|
- Marker müssen `options.idDevice` und `options.link` gesetzt haben
|
||||||
|
- Registrierung erfolgt über `addContextMenuToMarker(marker)`
|
||||||
|
- Redux `selectedDevice` wird nicht mehr benötigt
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ export function addContextMenuToMarker(marker) {
|
|||||||
const contextMenuItems = [];
|
const contextMenuItems = [];
|
||||||
|
|
||||||
// ✅ Nur hinzufügen, wenn `selectedDevice` vorhanden ist
|
// ✅ Nur hinzufügen, wenn `selectedDevice` vorhanden ist
|
||||||
if (selectedDevice && marker.options?.idDevice) {
|
if (marker?.options?.idDevice && marker?.options?.link) {
|
||||||
contextMenuItems.push({
|
contextMenuItems.push({
|
||||||
text: "Station öffnen (Tab)",
|
text: "Station öffnen (Tab)",
|
||||||
icon: "/img/screen_new.png",
|
icon: "/img/screen_new.png",
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import { setSelectedDevice } from "../../redux/slices/selectedDeviceSlice.js";
|
|||||||
import { selectGisStationsStaticDistrict } from "../../redux/slices/webservice/gisStationsStaticDistrictSlice.js";
|
import { selectGisStationsStaticDistrict } from "../../redux/slices/webservice/gisStationsStaticDistrictSlice.js";
|
||||||
import { selectGisStationsStatusDistrict } from "../../redux/slices/webservice/gisStationsStatusDistrictSlice.js";
|
import { selectGisStationsStatusDistrict } from "../../redux/slices/webservice/gisStationsStatusDistrictSlice.js";
|
||||||
import { selectGisStationsMeasurements } from "../../redux/slices/webservice/gisStationsMeasurementsSlice.js";
|
import { selectGisStationsMeasurements } from "../../redux/slices/webservice/gisStationsMeasurementsSlice.js";
|
||||||
|
import { addContextMenuToMarker } from "../../utils/contextMenuUtils";
|
||||||
|
|
||||||
const determinePriority = (iconPath, priorityConfig) => {
|
const determinePriority = (iconPath, priorityConfig) => {
|
||||||
for (let priority of priorityConfig) {
|
for (let priority of priorityConfig) {
|
||||||
@@ -119,11 +120,18 @@ export const createAndSetDevices = async (systemId, setMarkersFunction, GisSyste
|
|||||||
marker.openPopup();
|
marker.openPopup();
|
||||||
});
|
});
|
||||||
|
|
||||||
marker.on("contextmenu", (event) => {
|
marker.on("contextmenu", () => {
|
||||||
event.originalEvent?.preventDefault();
|
store.dispatch(
|
||||||
marker.openPopup();
|
setSelectedDevice({
|
||||||
|
id: station.IdLD,
|
||||||
|
name: station.Device,
|
||||||
|
area: station.Area_Name,
|
||||||
|
})
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
addContextMenuToMarker(marker);
|
||||||
|
|
||||||
return marker;
|
return marker;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user