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