Iceshrimp.NET/Iceshrimp.Backend/wwwroot/js/queue-index.js
2024-07-22 05:49:49 +02:00

28 lines
No EOL
1.1 KiB
JavaScript

async function reloadTables() {
if (document.hidden) return;
const last = document.getElementById('last-updated').innerText;
fetch(`/queue?last=${last}`).then(res => {
res.text().then(text => {
const newDocument = new DOMParser().parseFromString(text, "text/html");
const newLast = newDocument.getElementById('last-updated').innerText;
if (last !== newLast) {
document.getElementById('last-updated').innerText = newLast;
document.getElementById('recent-jobs').innerHTML = newDocument.getElementById('recent-jobs').innerHTML;
}
document.getElementById('queue-status').innerHTML = newDocument.getElementById('queue-status').innerHTML;
})
});
}
function docReady(fn) {
// see if DOM is already available
if (document.readyState === "complete" || document.readyState === "interactive") {
// call on next available tick
setTimeout(fn, 1);
} else {
document.addEventListener("DOMContentLoaded", fn);
}
}
docReady(() => setInterval(reloadTables, 2000));