mirror of
https://github.com/CopterExpress/clever-show.git
synced 2026-05-26 23:19:33 +00:00
51 lines
1.4 KiB
JavaScript
51 lines
1.4 KiB
JavaScript
let spinner = document.getElementById('spinner');
|
|
var tabledata = [];
|
|
updateData();
|
|
|
|
function updateData() {
|
|
let req = new XMLHttpRequest();
|
|
req.open('POST', '/selfcheck/all', false);
|
|
req.send();
|
|
tabledata = JSON.parse(req.response);
|
|
}
|
|
|
|
var table = new Tabulator("#copters-table", {
|
|
data: tabledata,
|
|
reactiveData: true,
|
|
selectable: true,
|
|
layout: "fitColumns",
|
|
columns: [
|
|
{title: "Name", field: "name"},
|
|
{title: "IP", field: "ip"},
|
|
{title: "Animation id", field: "anim_id"},
|
|
{title: "Batt voltage", field: "batt_voltage"},
|
|
{title: "Cell voltage", field: "cell_voltage"},
|
|
{title: "Selfcheck", field: "selfcheck"},
|
|
{title: "Time", field: "time"},
|
|
],
|
|
});
|
|
|
|
function refreshRows(selectedRows) {
|
|
spinner.style.display = 'inline-block';
|
|
setTimeout(function () {
|
|
selectedRows.forEach(function (element) {
|
|
let req = new XMLHttpRequest();
|
|
req.open('POST', '/selfcheck/selected?ip=' + element._row.data.ip, false);
|
|
req.send();
|
|
element.deselect();
|
|
let response = JSON.parse(req.response);
|
|
Object.keys(response).forEach(function (item) {
|
|
element._row.data[item] = response[item];
|
|
});
|
|
});
|
|
spinner.style.display = 'none';
|
|
}, 20);
|
|
}
|
|
|
|
function refreshSelected() {
|
|
refreshRows(table.getSelectedRows());
|
|
}
|
|
|
|
function refreshAll() {
|
|
refreshRows(table.getRows());
|
|
} |