diff --git a/js/format.js b/js/format.js index e0f5759..5b287b4 100644 --- a/js/format.js +++ b/js/format.js @@ -13,39 +13,32 @@ function formatData(data) { for (let i in data[key]) { var dataTempEntry = {}; dataTempEntry.callsign = {}; - if (data[key][i].software_name == "aprs") { - var stations = data[key][i].uploader_callsign.split(","); - for (let uploader in stations) { - dataTempEntry.callsign[stations[uploader]] = {}; + if (vehicles.hasOwnProperty(data[key][i].payload_callsign)) { + if (data[key][i].datetime == vehicles[data[key][i].payload_callsign].curr_position.gps_time) { + dataTempEntry = vehicles[data[key][i].payload_callsign].curr_position; } - } else if ("uplaoders" in data[key][i]){ - for (let uploader in data[key][i].uploaders) { - uploader_callsign = data[key][i].uploaders[uploader].uploader_callsign; - dataTempEntry.callsign[uploader_callsign] = {}; - if (data[key][i].uploaders[uploader].snr) { - dataTempEntry.callsign[uploader_callsign].snr = +data[key][i].uploaders[uploader].snr.toFixed(1); + } + for (let entry in data[key][i].uploaders) { + if (data[key][i].uploaders[entry].software_name == "aprs") { + var stations = data[key][i].uploaders[entry].uploader_callsign.split(","); + for (let uploader in stations) { + dataTempEntry.callsign[stations[uploader]] = {}; } - if (data[key][i].uploaders[uploader].rssi) { - dataTempEntry.callsign[uploader_callsign].rssi = +data[key][i].uploaders[uploader].rssi.toFixed(1); + } else { + uploader_callsign = data[key][i].uploaders[entry].uploader_callsign + dataTempEntry.callsign[uploader_callsign] = {}; + + if (data[key][i].uploaders[entry].snr) { + dataTempEntry.callsign[uploader_callsign].snr = + data[key][i].uploaders[entry].snr.toFixed(1); } - if (data[key][i].uploaders[uploader].frequency) { - dataTempEntry.callsign[uploader_callsign].frequency = +data[key][i].uploaders[uploader].frequency.toFixed(3); + if (data[key][i].uploaders[entry].rssi) { + dataTempEntry.callsign[uploader_callsign].rssi = + data[key][i].uploaders[entry].rssi.toFixed(1); } + if (data[key][i].uploaders[entry].frequency) { + dataTempEntry.callsign[uploader_callsign].frequency = + data[key][i].uploaders[entry].frequency.toFixed(3); + } + } - } else { - uploader_callsign = data[key][i].uploader_callsign - dataTempEntry.callsign[uploader_callsign] = {}; - - if (data[key][i].snr) { - dataTempEntry.callsign[uploader_callsign].snr = +data[key][i].snr.toFixed(1); - } - if (data[key][i].rssi) { - dataTempEntry.callsign[uploader_callsign].rssi = +data[key][i].rssi.toFixed(1); - } - if (data[key][i].frequency) { - dataTempEntry.callsign[uploader_callsign].frequency = +data[key][i].frequency.toFixed(3); - } - } dataTempEntry.gps_alt = parseFloat((data[key][i].alt).toPrecision(8)); dataTempEntry.gps_lat = parseFloat((data[key][i].lat).toPrecision(8)); diff --git a/js/tracker.js b/js/tracker.js index ab840c5..f210c64 100644 --- a/js/tracker.js +++ b/js/tracker.js @@ -2975,7 +2975,6 @@ function refresh() { } clientActive = true; clearTimeout(periodical); - periodical = setTimeout(refresh, timer_seconds * 1000); ajax_inprogress = false; } });