diff --git a/src/public/index.html b/src/public/index.html
index 6c5e019..3920521 100644
--- a/src/public/index.html
+++ b/src/public/index.html
@@ -1021,6 +1021,13 @@
function goToNode(id){
+ // find node
+ var node = findNodeById(id);
+ if(!node){
+ alert("Could not find node: " + id);
+ return;
+ }
+
// find node marker by id
var nodeMarker = findNodeMarkerById(id);
if(!nodeMarker){
@@ -1040,8 +1047,8 @@
animate: true,
});
- // open tooltip
- nodeMarker.openTooltip();
+ // open tooltip for node
+ map.openTooltip(getTooltipContentForNode(node), nodeMarker.getLatLng());
}
@@ -1146,37 +1153,6 @@
var icon = iconOnline; // todo status
- var tooltip = `
` +
- `${node.long_name}` +
- `
Short Name: ${node.short_name}` +
- `
Role: ${node.role_name}` +
- `
Hardware: ${node.hardware_model_name}`;
-
- if(node.battery_level){
- if(node.battery_level > 100){
- tooltip += `
Battery: ${node.battery_level > 100 ? 'Plugged In' : node.battery_level}`;
- } else {
- tooltip += `
Battery: ${node.battery_level}%`;
- }
- }
-
- if(node.voltage){
- tooltip += `
Voltage: ${Number(node.voltage).toFixed(2)}V`;
- }
-
- if(node.channel_utilization){
- tooltip += `
Ch Util: ${Number(node.channel_utilization).toFixed(2)}%`;
- }
-
- if(node.air_util_tx){
- tooltip += `
Air Util: ${Number(node.air_util_tx).toFixed(2)}%`;
- }
-
- // bottom info
- tooltip += `
ID: ${node.node_id}`;
- tooltip += `
Hex ID: ${node.node_id_hex}`;
- tooltip += `
Updated: ${moment(new Date(node.updated_at)).fromNow()}`;
-
// create node marker
var marker = L.marker([node.latitude, node.longitude], {
icon: icon,
@@ -1192,7 +1168,7 @@
// show tooltip on desktop only
if(!isMobile()){
- marker.bindTooltip(tooltip, {
+ marker.bindTooltip(getTooltipContentForNode(node), {
interactive: true,
});
}
@@ -1323,6 +1299,43 @@
}
+ function getTooltipContentForNode(node) {
+
+ var tooltip = `
` +
+ `${node.long_name}` +
+ `
Short Name: ${node.short_name}` +
+ `
Role: ${node.role_name}` +
+ `
Hardware: ${node.hardware_model_name}`;
+
+ if(node.battery_level){
+ if(node.battery_level > 100){
+ tooltip += `
Battery: ${node.battery_level > 100 ? 'Plugged In' : node.battery_level}`;
+ } else {
+ tooltip += `
Battery: ${node.battery_level}%`;
+ }
+ }
+
+ if(node.voltage){
+ tooltip += `
Voltage: ${Number(node.voltage).toFixed(2)}V`;
+ }
+
+ if(node.channel_utilization){
+ tooltip += `
Ch Util: ${Number(node.channel_utilization).toFixed(2)}%`;
+ }
+
+ if(node.air_util_tx){
+ tooltip += `
Air Util: ${Number(node.air_util_tx).toFixed(2)}%`;
+ }
+
+ // bottom info
+ tooltip += `
ID: ${node.node_id}`;
+ tooltip += `
Hex ID: ${node.node_id_hex}`;
+ tooltip += `
Updated: ${moment(new Date(node.updated_at)).fromNow()}`;
+
+ return tooltip;
+
+ }
+
// parse url params
var queryParams = new URLSearchParams(location.search);
var queryNodeId = queryParams.get('node_id');