Skip to content

Commit 2de652e

Browse files
committed
filtering support
1 parent aa4e66e commit 2de652e

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

js/tracker.js

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ var recoveries = [];
2323
var launches = null;
2424
var receiverCanvas = null;
2525

26+
var sondePrefix = ["RS92", "RS92-SGP", "RS92-NGP", "RS41", "RS41-SG", "RS41-SGP", "RS41-SGM", "DFM", "DFM06", "DFM09", "DFM17", "M10", "M20", "iMet-4", "iMet-54", "LMS6", "LMS6-400", "LMS6-1680", "iMS-100", "MRZ"];
27+
2628
var got_positions = false;
2729
var zoomed_in = false;
2830
var max_positions = 0; // maximum number of positions that ajax request should return (0 means no maximum)
@@ -2635,7 +2637,11 @@ function refresh() {
26352637
mode = (mode == "position") ? "latest" : mode.replace(/ /g,"");
26362638

26372639
if (wvar.query) {
2638-
var data_str = "mode=3days&type=positions&format=json&max_positions=" + max_positions + "&position_id=0&vehicles=" + encodeURIComponent(wvar.query);
2640+
if (sondePrefix.indexOf(wvar.query) > -1) {
2641+
var data_str = "mode="+mode+"&type=positions&format=json&max_positions=" + max_positions + "&position_id=" + position_id + "&vehicles=";
2642+
} else {
2643+
var data_str = "mode=3days&type=positions&format=json&max_positions=" + max_positions + "&position_id=0&vehicles=" + encodeURIComponent(wvar.query);
2644+
}
26392645
} else {
26402646
var data_str = "mode="+mode+"&type=positions&format=json&max_positions=" + max_positions + "&position_id=" + position_id + "&vehicles=" + encodeURIComponent(wvar.query);
26412647
}
@@ -2648,15 +2654,19 @@ function refresh() {
26482654
success: function(response, textStatus) {
26492655
$("#stText").text("loading |");
26502656
response.fetch_timestamp = Date.now();
2651-
if (wvar.query != null) {
2657+
if (sondePrefix.indexOf(wvar.query) > -1) {
2658+
update(response);
2659+
} else if (wvar.query != null) {
26522660
if (JSON.stringify(response).indexOf(wvar.query) == -1) {
26532661
//check using new API
26542662
ajax_inprogress = false;
26552663
refreshSingleOld(wvar.query);
26562664
} else {
2665+
ajax_inprogress_old = wvar.query;
26572666
update(response);
26582667
}
26592668
} else {
2669+
ajax_inprogress_old = wvar.query;
26602670
update(response);
26612671
}
26622672
$("#stText").text("");
@@ -2742,10 +2752,6 @@ function refreshSingleOld(serial) {
27422752
}
27432753
}
27442754

2745-
if (ajax_inprogress_old == serial) {
2746-
return;
2747-
}
2748-
27492755
document.getElementById("timeperiod").disabled = true;
27502756

27512757
var data_url = "https://api.v2.sondehub.org/sonde/" + encodeURIComponent(serial);
@@ -2806,6 +2812,9 @@ function refreshSingleOld(serial) {
28062812
if (data[i].pressure) {
28072813
dataTempEntry.data.pressure = data[i].pressure;
28082814
}
2815+
if (data[i].xdata) {
2816+
dataTempEntry.data.xdata = data[i].xdata;
2817+
}
28092818
dataTemp.push(dataTempEntry);
28102819
} else {
28112820
var dataTempEntry = {};
@@ -3507,6 +3516,16 @@ function update(response, flag) {
35073516
}
35083517
}
35093518

3519+
if (sondePrefix.indexOf(wvar.query) > -1) {
3520+
for (var i = response.positions.position.length - 1; i >= 0; i--) {
3521+
try {
3522+
if (!response.positions.position[i].type.includes(wvar.query)) {
3523+
response.positions.position.splice(i, 1)
3524+
}
3525+
} catch (e) {}
3526+
}
3527+
}
3528+
35103529
ssdv = (!response.ssdv) ? {} : response.ssdv;
35113530

35123531
// create a dummy response object for postions

0 commit comments

Comments
 (0)