aboutsummaryrefslogtreecommitdiff
path: root/frontend
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2023-07-25 15:20:23 +0200
committermetamuffin <metamuffin@disroot.org>2023-07-25 15:20:23 +0200
commit5acb70a706a6f847ee14a31c1785fdd1d5c16e8f (patch)
treedc97224b251380ff042ad8b5756c73da665da1e3 /frontend
parent000a322561f0da39d351649da790521731640fad (diff)
downloadfastbangs-5acb70a706a6f847ee14a31c1785fdd1d5c16e8f.tar
fastbangs-5acb70a706a6f847ee14a31c1785fdd1d5c16e8f.tar.bz2
fastbangs-5acb70a706a6f847ee14a31c1785fdd1d5c16e8f.tar.zst
clear page onhashchange and add link via dom
Diffstat (limited to 'frontend')
-rw-r--r--frontend/main.ts16
1 files changed, 14 insertions, 2 deletions
diff --git a/frontend/main.ts b/frontend/main.ts
index ad77f6f..b74f539 100644
--- a/frontend/main.ts
+++ b/frontend/main.ts
@@ -8,7 +8,7 @@ globalThis.addEventListener("hashchange", () => process_url())
globalThis.addEventListener("load", async () => {
status_el = document.createElement("p")
document.body.append(status_el)
-
+
const bangs_res = await fetch("/bangs.json")
if (!bangs_res.ok) document.writeln("error: could not download bangs.json")
bangs = await bangs_res.json()
@@ -16,10 +16,22 @@ globalThis.addEventListener("load", async () => {
})
function setup_page(engine?: string) {
+ document.getElementById("content")?.remove()
const section = document.createElement("section")
+ section.id = "content"
if (engine) {
- document.head.innerHTML += `<link rel="search" type="application/opensearchdescription+xml" title="laufente" href="todo" />`
+ if (document.getElementById("search-link")) {
+ // <link /> is already present, we need reload because browser wont notice otherwise
+ window.location.reload()
+ }
+ const link = document.createElement("link")
+ link.rel = "search"
+ link.id = "search-link"
+ link.type = "application/opensearchdescription+xml"
+ link.href = `/search.xml?default=${encodeURIComponent(engine)}`
+ link.title = `Laufente (defaults engine: ${engine})`
+ document.head.append(link)
const heading = document.createElement("h1")
heading.textContent = engine