From: Lady Date: Sat, 16 Dec 2023 19:35:21 +0000 (-0500) Subject: Fix index.html to only fetch topics once X-Git-Tag: 0.3.2~4 X-Git-Url: https://git.ladys.computer/x_status_git/commitdiff_plain/a95edc18a4daddb7791131ebb2dd26d0bed4d278?hp=ef3a7dd331debfcd8d511e569984a8384cc70a56 Fix index.html to only fetch topics once --- diff --git a/index.html b/index.html index 44698ed..3db7446 100644 --- a/index.html +++ b/index.html @@ -25,10 +25,8 @@ footer small{ Font-Size: Inherit; Font-Style: Italic } const parser = new DOMParser document.title = location.hostname document.documentElement.querySelector("body>h1").textContent = location.hostname -const renderLatest = (path, container) => fetch(`${path}.jsonld`) -.then($ => $.json()) -.then(meta => { - const { items } = meta +const renderLatest = (meta, container) => { + const { feed, items } = meta const status = items.pop() const src = status.content const { documentElement: article } = parser.parseFromString(src, "application/xhtml+xml") @@ -57,10 +55,12 @@ const renderLatest = (path, container) => fetch(`${path}.jsonld`) summary.textContent = title details.append(...document.importNode(article, true).childNodes) container.replaceChildren(wrapper, footer) } - else container.replaceChildren(document.importNode(article, true), footer) }) + else container.replaceChildren(document.importNode(article, true), footer) } fetch("statuses.jsonld") .then($ => $.json()) -.then(meta => renderLatest(meta.current, document.getElementById("status"))) +.then(meta => fetch(`${meta.current}.jsonld`)) +.then($ => $.json()) +.then(meta => renderLatest(meta, document.getElementById("status"))) fetch("topics.jsonld") .then($ => $.json()) .then(meta => { @@ -73,6 +73,5 @@ fetch("topics.jsonld") section.appendChild(document.createElement("h3")).textContent = topic.subject const div = section.appendChild(document.createElement("div")) div.className = "STATUS" - renderLatest(new URL(topic["@id"]).pathname, div) - }) } }) + renderLatest(topic, div) }) } })