chasemapper/static/js/tables.js

85 wiersze
2.9 KiB
JavaScript
Czysty Zwykły widok Historia

//
//
// Allow for the summary window to be expanded with a tap.
var summary_enlarged = false;
function toggleSummarySize(){
var row = $("#summary_table").tabulator("getRow", 1);
if(summary_enlarged == false){
row.getElement().addClass("largeTableRow");
summary_enlarged = true;
}else{
row.getElement().removeClass("largeTableRow");
summary_enlarged = false;
}
$("#summary_table").tabulator("redraw", true);
}
function selectPayloadFollow(){}
// TODO. Allow selection of a specific payload to follow.
// Initialise tables
function initTables(){
// Telemetry data table
$("#telem_table").tabulator({
layout:"fitData",
layoutColumnsOnNewData:true,
//selectable:1, // TODO...
columns:[ //Define Table Columns
{title:"Callsign", field:"callsign", headerSort:false},
{title:"Time (Z)", field:"short_time", headerSort:false},
{title:"Latitude", field:"lat", headerSort:false},
{title:"Longitude", field:"lon", headerSort:false},
{title:"Alt (m)", field:"alt", headerSort:false},
{title:"V_rate (m/s)", field:"vel_v", headerSort:false}
]
});
$("#summary_table").tabulator({
layout:"fitData",
layoutColumnsOnNewData:true,
columns:[ //Define Table Columns
{title:"Alt (m)", field:"alt", headerSort:false},
{title:"Speed (kph)", field:"speed", headerSort:false},
{title:"Asc Rate (m/s)", field:"vel_v", headerSort:false},
{title:"Azimuth", field:"azimuth", headerSort:false},
{title:"Elevation", field:"elevation", headerSort:false},
{title:"Range", field:"range", headerSort:false},
],
data:[{id: 1, alt:'-----m', speed:'---kph', vel_v:'-.-m/s', azimuth:'---°', elevation:'--°', range:'----m'}],
rowClick:function(e, row){
toggleSummarySize();
},
rowTap:function(e, row){
toggleSummarySize();
}
});
}
function updateTelemetryTable(){
var telem_data = [];
if (jQuery.isEmptyObject(balloon_positions)){
telem_data = [{callsign:'None'}];
}else{
for (balloon_call in balloon_positions){
var balloon_call_data = Object.assign({},balloon_positions[balloon_call].latest_data);
var balloon_call_age = balloon_positions[balloon_call].age;
// Modify some of the fields to fixed point values.
balloon_call_data.lat = balloon_call_data.position[0].toFixed(5);
balloon_call_data.lon = balloon_call_data.position[1].toFixed(5);
balloon_call_data.alt = balloon_call_data.position[2].toFixed(1);
balloon_call_data.vel_v = balloon_call_data.vel_v.toFixed(1);
// Update table
telem_data.push(balloon_call_data);
}
}
$("#telem_table").tabulator("setData", telem_data);
}