Skip to content

Commit 41f1705

Browse files
committed
use new API for chase
1 parent a4e18b9 commit 41f1705

File tree

1 file changed

+70
-7
lines changed

1 file changed

+70
-7
lines changed

js/tracker.js

Lines changed: 70 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,7 @@ function clean_refresh(text, force, history_step) {
369369
clearTimeout(periodical_receivers);
370370
clearTimeout(periodical_recoveries);
371371

372+
refreshNewReceivers(true);
372373
refresh();
373374

374375
return true;
@@ -2852,23 +2853,50 @@ function refreshSingleOld(serial) {
28522853
}
28532854

28542855
function refreshReceivers() {
2855-
if(offline.get('opt_hide_receivers')) return;
2856+
if(offline.get('opt_hide_receivers')) {
2857+
refreshNewReceivers(true);
2858+
} else {
28562859

2857-
var mode = wvar.mode.toLowerCase();
2858-
mode = (mode == "position") ? "latest" : mode.replace(/ /g,"");
2860+
data_str = "duration=1d";
2861+
2862+
$.ajax({
2863+
type: "GET",
2864+
url: receivers_url,
2865+
data: data_str,
2866+
dataType: "json",
2867+
success: function(response, textStatus) {
2868+
updateReceivers(response);
2869+
},
2870+
complete: function(request, textStatus) {
2871+
refreshNewReceivers(true);
2872+
}
2873+
});
2874+
}
2875+
}
28592876

2860-
data_str = "duration=3h";
2877+
function refreshNewReceivers(initial) {
2878+
if (initial == true) {
2879+
var mode = wvar.mode.toLowerCase();
2880+
mode = (mode == "position") ? "latest" : mode.replace(/ /g,"");
2881+
//data_str = "duration=" + mode;
2882+
data_str = "duration=3h";
2883+
} else {
2884+
data_str = "duration=1m";
2885+
}
28612886

28622887
$.ajax({
28632888
type: "GET",
28642889
url: receivers_url,
28652890
data: data_str,
28662891
dataType: "json",
28672892
success: function(response, textStatus) {
2868-
updateReceivers(response);
2893+
updateChase(response);
2894+
if(!offline.get('opt_hide_receivers')) {
2895+
updateReceivers(response);
2896+
}
28692897
},
28702898
complete: function(request, textStatus) {
2871-
periodical_listeners = setTimeout(refreshReceivers, 60 * 1000);
2899+
periodical_listeners = setTimeout(function() {refreshNewReceivers(false)}, 30 * 1000);
28722900
}
28732901
});
28742902
}
@@ -2955,7 +2983,6 @@ function startAjax() {
29552983
//periodical = setInterval(refresh, timer_seconds * 1000);
29562984
refresh();
29572985

2958-
//periodical_listeners = setInterval(refreshReceivers, 60 * 1000);
29592986
refreshReceivers();
29602987
refreshRecoveries();
29612988
initRecoveryPane();
@@ -3045,6 +3072,42 @@ function updateReceiverMarker(receiver) {
30453072
}
30463073
}
30473074

3075+
function updateChase(r) {
3076+
if(!r) return;
3077+
3078+
var response = {};
3079+
response.positions = {};
3080+
var dataTemp = [];
3081+
3082+
for (var i in r) {
3083+
if (r.hasOwnProperty(i)) {
3084+
for (var s in r[i]) {
3085+
if (r[i].hasOwnProperty(s)) {
3086+
last = r[i][s]
3087+
if(last.mobile == true) {
3088+
var dataTempEntry = {};
3089+
dataTempEntry.callsign = last.uploader_callsign;
3090+
dataTempEntry.gps_alt = last.uploader_position[2];
3091+
dataTempEntry.gps_lat = last.uploader_position[0];
3092+
dataTempEntry.gps_lon = last.uploader_position[1];
3093+
var time = new Date(last.ts).toISOString();
3094+
dataTempEntry.gps_time = time;
3095+
dataTempEntry.server_time = time;
3096+
dataTempEntry.vehicle = last.uploader_callsign + "_chase";
3097+
dataTempEntry.position_id = last.uploader_callsign + "-" + time;
3098+
dataTemp.push(dataTempEntry);
3099+
}
3100+
}
3101+
}
3102+
}
3103+
}
3104+
response.positions.position = dataTemp;
3105+
response.fetch_timestamp = Date.now();
3106+
if (response.positions.position.length > 0) {
3107+
update(response);
3108+
}
3109+
}
3110+
30483111
function updateReceivers(r) {
30493112
if(!r) return;
30503113
ls_receivers = true;

0 commit comments

Comments
 (0)