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