feat: colour palettes
All checks were successful
Lint / shellcheck (push) Successful in 17s

This commit is contained in:
2026-04-01 14:23:12 +02:00
parent 69bd5832e7
commit 009877ae76
30 changed files with 446 additions and 85 deletions

View File

@@ -1,44 +1,54 @@
document.addEventListener('DOMContentLoaded', function() {
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');
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 = '<p>Enter a search term above.</p>';
resultsContainer.innerHTML = "<p>Enter a search term above.</p>";
return;
}
fetch('/search.json')
.then(function(response) { return response.json(); })
.then(function(data) {
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 results = data.filter(function (item) {
return (
item.title.toLowerCase().indexOf(q) !== -1 ||
item.content.toLowerCase().indexOf(q) !== -1
);
});
var esc = query.replace(/</g, '&lt;').replace(/>/g, '&gt;');
var esc = query.replace(/</g, "&lt;").replace(/>/g, "&gt;");
if (results.length === 0) {
resultsContainer.innerHTML = '<p>No results found for "<strong>' + esc + '</strong>".</p>';
resultsContainer.innerHTML =
'<p>No results found for "<strong>' + esc + '</strong>".</p>';
return;
}
var html = '<p>Found ' + results.length + ' result(s) for "<strong>' + esc + '</strong>":</p>';
results.forEach(function(result) {
var html =
"<p>Found " +
results.length +
' result(s) for "<strong>' +
esc +
'</strong>":</p>';
results.forEach(function (result) {
var snippet = result.content.substring(0, 200);
if (result.content.length > 200) snippet += '...';
if (result.content.length > 200) snippet += "...";
html += '<div class="search-result">';
html += '<a href="' + result.url + '">' + result.title + '</a>';
if (snippet) html += '<p>' + snippet + '</p>';
html += '</div>';
html += '<a href="' + result.url + '">' + result.title + "</a>";
if (snippet) html += "<p>" + snippet + "</p>";
html += "</div>";
});
resultsContainer.innerHTML = html;
})
.catch(function() {
resultsContainer.innerHTML = '<p>Error loading search index.</p>';
.catch(function () {
resultsContainer.innerHTML = "<p>Error loading search index.</p>";
});
});