var page = document.getElementById("page"); var search = document.getElementById("searchbar"); var overinput = document.querySelector(".overinput"); var clearinput = document.querySelector(".clearinput"); var bodyele = document.getElementById("body"); var searchNodes = [...document.getElementById("searchNodes").children]; var searchNodesCont = document.getElementById("searchNodes"); var sbheader = document.getElementById("sbheader"); function onsearch () { search.value = search.value.replace(/^Redirects to /i, ">> " ); search.value = search.value.replace(/^Redirects /i, ">> "); search.value = search.value.replace(/^\>\> to /i, ">> " ); if (sessionStorage.getItem("searchvalue") === "()" && search.value === ")") search.value = ""; if (sessionStorage.getItem("searchvalue") === "()" && search.value === "(") search.value = ""; if (search.value === "(" || search.value.startsWith("Tagged ")) { search.value = "()"; search.setSelectionRange(1, 1); search.focus(); } if (search.value != "") { searchNodesCont.classList.add("isSearching"); sbheader.classList.add("isSearching"); } else { searchNodesCont.classList.remove("isSearching"); sbheader.classList.remove("isSearching"); searchNodes.forEach(child => child.style.display = "") } var value = search.value.replace(/>/g, ">").replace(/>")) { overinput.style.display = "inline-block"; overinput.innerHTML = "Redirects " + (search.value.length > 3 && search.value !== ">> " ? search.value.replace(/^\>\>/, "to ") : ""); searchNodes.forEach(child => { child.style.display = "none"; var name = child.querySelector(".linkname"); if (name.innerHTML.toLowerCase().includes(value.toLowerCase())) child.style.display = ""; }); } else if (/^\(/.test(search.value) && /\)$/.test(search.value)) { overinput.style.display = "inline-block"; overinput.innerHTML = "Tagged " + (search.value !== "()" ? search.value.replace(/^\(/, "with ").replace(/\)$/, "") : ""); var valstripped = search.value.replace(/^\(/, "").replace(/\)$/, "").toLowerCase(); searchNodes.forEach(child => { child.style.display = "none"; var tags = child.querySelectorAll(".tagLabel"); tags.forEach(tag => { if (tag.getAttribute("title").toLowerCase().includes(valstripped)) child.style.display = ""; else if (tag.innerHTML.toLowerCase().includes(valstripped)) child.style.display = ""; }) }); } else { overinput.style.display = "none"; searchNodes.forEach(child => { child.style.display = "none"; var name = child.querySelector(".linkname"); if (name.innerHTML.toLowerCase().includes(value.toLowerCase())) child.style.display = ""; }); } sessionStorage.setItem("searchvalue", search.value); }; search.value = sessionStorage.getItem("searchvalue"); search.addEventListener('input', onsearch); overinput.addEventListener("click", () => {search.focus();}); clearinput.addEventListener("click", () => {search.value = "";onsearch();}); onsearch();