topE = document.querySelector("#top"); programE = document.querySelector("#program"); async function update() { try { const response = await fetch("/update"); if (response.status == 200) { html = await response.text(); topE.innerHTML = html.split("\n").slice(0, 1)[0]; programE.outerHTML = html.split("\n").slice(1).join("\n"); } } catch (err) { // Happens when the server is closed / unreachable if (!topE.textContent.endsWith("❗")) { topE.textContent = (topE.textContent.slice(0, -1) || topE.textContent) + "❗"; } console.log("Fetch failed:", err); } } setInterval(() => { update() }, 5000);