From 3fc73e93fb16ea0373f9e989d36fec64163ed215 Mon Sep 17 00:00:00 2001 From: ISA Date: Sat, 10 Aug 2024 18:28:52 +0200 Subject: [PATCH] =?UTF-8?q?linie=20Station=20in=20neue=20Tab=20=C3=B6ffnen?= =?UTF-8?q?=20in=20mapFeatures.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/mapFeatures.js | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/utils/mapFeatures.js b/utils/mapFeatures.js index b09f31e17..28cd225ce 100644 --- a/utils/mapFeatures.js +++ b/utils/mapFeatures.js @@ -8,7 +8,15 @@ import startIcon from "../components/gisPolylines/icons/StartIcon"; import endIcon from "../components/gisPolylines/icons/EndIcon"; import { AddSupportPointIcon, RemoveSupportPointIcon } from "../components/gisPolylines/icons/SupportPointIcons"; import { redrawPolyline } from "./mapUtils"; // Import redrawPolyline here +import { openInNewTab } from "../utils/contextMenuUtils"; // Importiere die Funktion, wenn nicht schon vorhanden +//---------------------------------- +// geometryUtils.js +export const parsePoint = (position) => { + const [longitude, latitude] = position.slice(6, -1).split(" "); + return { latitude: parseFloat(latitude), longitude: parseFloat(longitude) }; +}; +//---------------------------------- export const setupMarkers = async ( map, locations, @@ -118,6 +126,7 @@ export const setupMarkers = async ( } }; //---------------------------------- + export const setupPolylines = (map, linePositions, lineColors, tooltipContents, setNewCoords, tempMarker, currentZoom, currentCenter) => { const markers = []; const polylines = []; @@ -227,6 +236,16 @@ export const setupPolylines = (map, linePositions, lineColors, tooltipContents, color: lineColors[`${lineData.idLD}-${lineData.idModul}`] || "#000000", contextmenu: true, contextmenuItems: [ + { + text: "Station öffnen (Tab)", + icon: "/img/screen_new.png", + callback: (e) => { + console.log("lineData idLD:", lineData.idLD); + const idLD = lineData.idLD; // Angenommen, die ID der Station ist in lineData vorhanden + const link = `/talas5/devices/cpl.aspx?id=${idLD}`; + window.open(link, "_blank"); // Öffne direkt den Link in einem neuen Tab + }, + }, { text: "Stützpunkt hinzufügen", icon: "/img/icons/gisLines/add-support-point.svg", @@ -264,9 +283,3 @@ export const setupPolylines = (map, linePositions, lineColors, tooltipContents, return { markers, polylines }; }; - -// geometryUtils.js -export const parsePoint = (position) => { - const [longitude, latitude] = position.slice(6, -1).split(" "); - return { latitude: parseFloat(latitude), longitude: parseFloat(longitude) }; -};