From aa43ecca893ebda91df538c73b311d141e8d9168 Mon Sep 17 00:00:00 2001 From: uvok cheetah Date: Mon, 1 Sep 2025 19:48:08 +0200 Subject: Remove newsbanner inline script --- _layouts/postlist.html | 29 +---------------------------- assets/js/newsbanner.js | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 28 deletions(-) create mode 100644 assets/js/newsbanner.js diff --git a/_layouts/postlist.html b/_layouts/postlist.html index b6b29ef..24909d1 100644 --- a/_layouts/postlist.html +++ b/_layouts/postlist.html @@ -57,31 +57,4 @@ layout: default - + diff --git a/assets/js/newsbanner.js b/assets/js/newsbanner.js new file mode 100644 index 0000000..1a06f2b --- /dev/null +++ b/assets/js/newsbanner.js @@ -0,0 +1,28 @@ +--- +--- + document.addEventListener("DOMContentLoaded", function() { + {% assign news_ids = site.data.news | map: 'id' | jsonify %} + + const ids = {{ news_ids }}; + for (currId of ids) { + const currentBanner = document.getElementById(currId); + if (!currentBanner) { + continue; + } + const closeLink = currentBanner.firstElementChild; + const currentNewsClosed = localStorage.getItem(currId+"closed"); + if (currentNewsClosed === "true") { + currentBanner.style.display = "none"; + } + + function closeBanner(evt) { + currentBanner.style.display = "none"; + const storId = evt.currentTarget.closeArg + "closed"; + localStorage.setItem(storId, "true"); + } + + closeLink.closeArg=currId; + closeLink.addEventListener("click", closeBanner); + } + + }); -- cgit v1.2.3