document.addEventListener("DOMContentLoaded", function () { var params = new URLSearchParams(window.location.search); var query = params.get("q"); var box = document.getElementById("search-box"); var resultsContainer = document.getElementById("search-results-list"); if (box && query) box.value = query; if (!query) { resultsContainer.innerHTML = "
Enter a search term above.
"; return; } fetch("/search.json") .then(function (response) { return response.json(); }) .then(function (data) { var q = query.toLowerCase(); var results = data.filter(function (item) { return ( item.title.toLowerCase().indexOf(q) !== -1 || item.content.toLowerCase().indexOf(q) !== -1 ); }); var esc = query.replace(//g, ">"); if (results.length === 0) { resultsContainer.innerHTML = 'No results found for "' + esc + '".
'; return; } var html = "Found " + results.length + ' result(s) for "' + esc + '":
'; results.forEach(function (result) { var snippet = result.content.substring(0, 200); if (result.content.length > 200) snippet += "..."; html += '" + snippet + "
"; html += "Error loading search index.
"; }); });