JSFiddle - React, Tailwind, and code Playground
JavaScript
//მაგიდის ახლიდან დახატვა
function reDrawTable(){
"use strict";
$("table#content").dataTable({
"destroy" : true,
"ajax": "/json",
"tableTools": true,
"columnDefs": [
{
"render": function (data) {
var labelType, labelTitle;
if (data === 1) {
labelTitle = "ჩართულია";
labelType = " alert-success";
} else {
labelTitle = "გათიშულია";
labelType = " alert-danger";
}
return "<span class='label " + labelType + "'>" + labelTitle + "</span>";
},
"targets": 3
}
]
});
}
//მთავარი ფუნქცია
$(document).ready(function() {
//LastUpdate-ში ინახება ინფორმაციის განახლების დრო.
var table = $("table#content").dataTable(),
lastUpdate;
//პირველი გაშვება
$.getJSON("/json", function(data){
"use strict";
if (data.hasOwnProperty("data") === false) {
console.log("URL-ზე მონაცემები ცარიელია");
}
else {
console.log("პირველი პროცესი");
lastUpdate = data.lastUpdate;
reDrawTable();
calculateBar(data);
search();
}
});
//ყოველ 5 წამში ერთხელ ეშვება.
setInterval(function() {
"use strict";
$.getJSON("/json", function(data){
"use strict";
if (lastUpdate === data.lastUpdate) {
console.log("ახალი მონაცემები არ მოიძებნა");
} else if (data.hasOwnProperty("data") === false) {
$("table#content").dataTable({
"destroy" : true
});
console.log("მონაცემები არ იქნა მოწოდებული");
document.getElementById("success").style.width = 0 + "%";
document.getElementById("danger").style.width = 0 + "%";
} else {
reDrawTable();
search();
calculateBar(data);
lastUpdate = data.lastUpdate;
}
});
}, 5000);
} );