2025-12-28 13:57:58 +01:00
|
|
|
let Data_api = "/api/02c46aae-0b7a-41e6-99da-8d69d3f3e889";
|
2025-10-15 14:16:36 +02:00
|
|
|
let freight = null;
|
2025-09-14 13:20:09 +02:00
|
|
|
|
2025-12-28 13:57:58 +01:00
|
|
|
let ReqData = ["Stadte", "Dorfer", "Wichtiges"];
|
2025-10-14 15:41:39 +02:00
|
|
|
|
2025-10-08 14:01:35 +02:00
|
|
|
// Post to n8n Server to get Data from Grist in JSON format.
|
2025-09-14 13:20:09 +02:00
|
|
|
async function GetMarkerData() {
|
2025-12-28 13:57:58 +01:00
|
|
|
|
2025-10-14 15:41:39 +02:00
|
|
|
try {
|
2025-12-28 14:06:31 +01:00
|
|
|
const res = await axios.post(Data_api, ReqData);
|
2025-10-15 14:17:26 +02:00
|
|
|
console.log (res.data);
|
2025-10-15 14:16:36 +02:00
|
|
|
RenderMarkers(res.data);
|
2025-10-14 15:41:39 +02:00
|
|
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error (err);
|
|
|
|
|
}
|
|
|
|
|
|
2025-09-14 13:20:09 +02:00
|
|
|
}
|
|
|
|
|
|
2025-10-15 15:32:16 +02:00
|
|
|
//Render Map Markers with the Position from Grist Database
|
2025-10-15 15:37:52 +02:00
|
|
|
function RenderMarkers(rows){
|
2025-10-15 15:20:44 +02:00
|
|
|
if (!Array.isArray(rows)) {
|
|
|
|
|
console.error('Erwarte ein Array, bekam:', rows);
|
|
|
|
|
return;
|
|
|
|
|
}
|
2025-09-14 13:20:09 +02:00
|
|
|
|
2025-10-15 15:20:44 +02:00
|
|
|
rows.forEach((row) => {
|
|
|
|
|
const x = Number(row.X);
|
|
|
|
|
const y = Number(row.Y);
|
2025-12-28 14:44:44 +01:00
|
|
|
const url = row.Wiki_Link;
|
2025-10-15 15:20:44 +02:00
|
|
|
if (!Number.isFinite(x) || !Number.isFinite(y)) return;
|
|
|
|
|
L.marker([y, x]) // [lat, lng] -> [Y, X]
|
|
|
|
|
.addTo(map)
|
2025-12-28 14:44:44 +01:00
|
|
|
.on('click', () => {
|
|
|
|
|
window.open(url);
|
|
|
|
|
});
|
2025-10-15 15:20:44 +02:00
|
|
|
});
|
2025-09-07 15:02:12 +02:00
|
|
|
}
|
|
|
|
|
|
2025-10-14 15:41:39 +02:00
|
|
|
|
2025-10-14 15:55:50 +02:00
|
|
|
GetMarkerData();
|