git_bsmd/AIS/bsmd.AIS2Service/update.js

47 lines
1.8 KiB
JavaScript

function update() {
fetch('http://localhost:9050/api/ais')
.then(function (response) {
return response.json();
})
.then(function (data) {
updateData(data);
})
.catch(function (err) {
console.log('error: ' + err);
});
function updateData(data) {
var table = document.getElementById('aisTable');
for (var i = 0; i < data.length; i++) {
let row_id = "row_" + data[i].MMSI;
row = document.getElementById(row_id);
if(row == null) { // not found, create new row
row = document.createElement('tr');
row.innerHTML = `<td>` + data[i].MMSI +
`</td><td id="name_` + data[i].MMSI + `"/>` +
`<td id="timestamp_` + data[i].MMSI + `"/>` +
`<td id="lat_` + data[i].MMSI + `"/>` +
`<td id="lon_` + data[i].MMSI + `"/>` +
`<td id="imo_` + data[i].MMSI + `"/>` +
`<td>` + data[i].IsClassB + `</td>`;
table.appendChild(row);
}
// update existing row
var td = document.getElementById("name_" + data[i].MMSI);
td.innerHTML = data[i].Name;
td = document.getElementById("timestamp_" + data[i].MMSI);
td.innerHTML = data[i].LastUpdate;
td = document.getElementById("lat_" + data[i].MMSI);
td.innerHTML = data[i].Latitude;
td = document.getElementById("lon_" + data[i].MMSI);
td.innerHTML = data[i].Longitude;
td = document.getElementById("imo_" + data[i].MMSI);
td.innerHTML = data[i].IMO;
}
}
}
function startup() {
setInterval(function () { update(); }, 10000);
}