diff --git a/src/index.js b/src/index.js index 2645a15..6bd443e 100644 --- a/src/index.js +++ b/src/index.js @@ -484,7 +484,9 @@ app.get('/api/v1/nodes/:nodeId/position-history', async (req, res) => { positions.forEach((position) => { positionHistory.push({ + id: position.id, node_id: position.node_id, + type: "position", latitude: position.latitude, longitude: position.longitude, altitude: position.altitude, @@ -497,6 +499,7 @@ app.get('/api/v1/nodes/:nodeId/position-history', async (req, res) => { mapReports.forEach((mapReport) => { positionHistory.push({ node_id: mapReport.node_id, + type: "map_report", latitude: mapReport.latitude, longitude: mapReport.longitude, altitude: mapReport.altitude, diff --git a/src/public/index.html b/src/public/index.html index 80fc96f..b5f7e75 100644 --- a/src/public/index.html +++ b/src/public/index.html @@ -3801,6 +3801,12 @@ continue; } + // find node this position is for + const node = findNodeById(positionHistory.node_id); + if(!node){ + continue; + } + // fix lat long positionHistory.latitude = positionHistory.latitude / 10000000; positionHistory.longitude = positionHistory.longitude / 10000000; @@ -3817,15 +3823,20 @@ positionHistoryLinesCords.push([positionHistory.latitude, longitude]); let tooltip = ""; - tooltip += `${moment(new Date(positionHistory.created_at)).format("DD/MM/YYYY hh:mm A")}
`; - tooltip += `Position: ${positionHistory.latitude}, ${positionHistory.longitude}
` + if(positionHistory.type === "position"){ + tooltip += `Position`; + } else if(positionHistory.type === "map_report"){ + tooltip += `Map Report`; + } + tooltip += `
[${escapeString(node.short_name)}] ${escapeString(node.long_name)}`; + tooltip += `
${positionHistory.latitude}, ${positionHistory.longitude}`; + tooltip += `
Heard on: ${moment(new Date(positionHistory.created_at)).format("DD/MM/YYYY hh:mm A")}`; // add gateway info if available if(positionHistory.gateway_id){ const gatewayNode = findNodeById(positionHistory.gateway_id); - if(gatewayNode){ - tooltip += `Heard by: [${gatewayNode.short_name}] ${gatewayNode.long_name}`; - } + const gatewayNodeInfo = gatewayNode ? `[${gatewayNode.short_name}] ${gatewayNode.long_name}` : "???"; + tooltip += `
Heard by: ${gatewayNodeInfo}`; } // create position history marker