@@ -2281,10 +2281,27 @@ function mapInfoBox_handle_prediction(event) {
2281
2281
altitude = Math . round ( data . alt ) + " m" ;
2282
2282
}
2283
2283
2284
+ var coords_text ;
2285
+ var ua = navigator . userAgent . toLowerCase ( ) ;
2286
+
2287
+ // determine how to link the vehicle coordinates to a native app, if on a mobile device
2288
+ if ( ua . indexOf ( 'iphone' ) > - 1 ) {
2289
+ coords_text = '<a href="maps://?q=' + data . lat + ',' + data . lon + '">' +
2290
+ roundNumber ( data . lat , 5 ) + ', ' + roundNumber ( data . lon , 5 ) + '</a>' ;
2291
+ } else if ( ua . indexOf ( 'android' ) > - 1 ) {
2292
+ coords_text = '<a href="geo:' + data . lat + ',' + data . lon + '?q=' + data . lat + ',' + data . lon + '(Prediction)">' +
2293
+ roundNumber ( data . lat , 5 ) + ', ' + roundNumber ( data . lon , 5 ) + '</a>' ;
2294
+ } else {
2295
+ coords_text = '<a href="https://www.google.com/maps/search/?api=1&query=' + data . lat + ',' + data . lon + '" target="_blank" rel="noopener noreferrer">' +
2296
+ roundNumber ( data . lat , 5 ) + ', ' + roundNumber ( data . lon , 5 ) + '</a>' ;
2297
+ }
2298
+
2284
2299
mapInfoBox . setContent ( "<pre>" +
2285
2300
formatDate ( new Date ( parseInt ( data . time ) * 1000 ) , true ) + "\n\n" +
2286
2301
"<b>Altitude:</b> " + altitude + "\n" +
2287
- "<b>Location:</b> <a href='geo:" + data . lat . toFixed ( 5 ) + "," + data . lon . toFixed ( 5 ) + "'>" + data . lat . toFixed ( 5 ) + ", " + data . lon . toFixed ( 5 ) + "</a>\n" +
2302
+ "<b>Location:</b> " + coords_text +
2303
+ //<a href='geo:" + data.lat.toFixed(5) + "," + data.lon.toFixed(5) + "'>" + data.lat.toFixed(5) + ", " + data.lon.toFixed(5) + "</a>"
2304
+ "\n" +
2288
2305
event . target . pred_type +
2289
2306
"</pre>"
2290
2307
) ;
0 commit comments