From f1a86215ce65bbddd7893cf4d0cb9e7c9932b6e3 Mon Sep 17 00:00:00 2001
From: David Huser <4357648+davidhuser@users.noreply.github.com>
Date: Wed, 15 Apr 2026 20:19:13 +0200
Subject: [PATCH 1/4] update timestamp in map
---
js/map-providers.js | 4 +++-
js/map-security.js | 4 +++-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/js/map-providers.js b/js/map-providers.js
index 688c5f3..b4da095 100644
--- a/js/map-providers.js
+++ b/js/map-providers.js
@@ -464,6 +464,7 @@ function loadUnifiedProviderMap(mapConfig, countries) {
};
var latestGenerated = null;
+ var latestCommit = null;
for (var ci = 0; ci < results.length; ci++) {
var data = results[ci].data;
@@ -473,6 +474,7 @@ function loadUnifiedProviderMap(mapConfig, countries) {
if (data.generated && (!latestGenerated || data.generated > latestGenerated)) {
latestGenerated = data.generated;
+ latestCommit = data.commit;
}
var keys = Object.keys(muni);
@@ -490,7 +492,7 @@ function loadUnifiedProviderMap(mapConfig, countries) {
}
if (latestGenerated) {
- showGenerated({ generated: latestGenerated, commit: results[0].data.commit });
+ showGenerated({ generated: latestGenerated, commit: latestCommit });
}
var hatchSvg = 'data:image/svg+xml,' +
diff --git a/js/map-security.js b/js/map-security.js
index 75c553e..fad78c1 100644
--- a/js/map-security.js
+++ b/js/map-security.js
@@ -101,6 +101,7 @@ function loadSecurityMap(mapConfig, countries) {
var catCounts = { 'both': 0, 'spf-only': 0, 'dmarc-only': 0, 'none': 0, 'no-data': 0 };
var latestGenerated = null;
+ var latestCommit = null;
for (var ci = 0; ci < results.length; ci++) {
var data = results[ci].data;
@@ -109,6 +110,7 @@ function loadSecurityMap(mapConfig, countries) {
if (data.generated && (!latestGenerated || data.generated > latestGenerated)) {
latestGenerated = data.generated;
+ latestCommit = data.commit;
}
var keys = Object.keys(muni);
@@ -123,7 +125,7 @@ function loadSecurityMap(mapConfig, countries) {
}
if (latestGenerated) {
- showGenerated({ generated: latestGenerated, commit: results[0].data.commit });
+ showGenerated({ generated: latestGenerated, commit: latestCommit });
}
var hatchSvg = 'data:image/svg+xml,' +
From 132f32a84b1c0fa5d519265aa1438bab08726c18 Mon Sep 17 00:00:00 2001
From: David Huser <4357648+davidhuser@users.noreply.github.com>
Date: Wed, 15 Apr 2026 20:40:27 +0200
Subject: [PATCH 2/4] ui
---
index.html | 6 +++---
js/map-shared.js | 6 +++---
js/nav.js | 8 ++++++++
providers.html | 2 +-
security.html | 2 +-
5 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/index.html b/index.html
index 71cdfb5..3e6b428 100644
--- a/index.html
+++ b/index.html
@@ -39,16 +39,16 @@
Municipality Email Maps
Interactive maps showing email infrastructure of ~15,300 municipalities in Germany, Austria, and Switzerland, based on public DNS records and network signals.
Diese Datenschutzerklärung erläutert, wie auf dieser Website mit Personendaten umgegangen wird. Die verantwortliche Person ist im Impressum aufgeführt.
+
+
2. Hosting
+
Diese Website wird über GitHub Pages (GitHub Inc., USA) bereitgestellt. Beim Aufruf der Website wird Ihre IP-Adresse an die Server von GitHub übermittelt. Dies ist technisch notwendig, um die Website auszuliefern. Weitere Informationen finden Sie in der Datenschutzerklärung von GitHub.
+
+
3. Externe Ressourcen
+
Zur Darstellung der Karten werden externe Ressourcen von Drittanbietern geladen. Dabei wird Ihre IP-Adresse an die jeweiligen Server ĂĽbermittelt:
+
+
unpkg.com — Leaflet-Kartenbibliothek und Gemeindegrenzen (TopoJSON)
+
basemaps.cartocdn.com — Kartenkacheln (CARTO)
+
+
+
4. Cookies
+
Diese Website verwendet keine Cookies.
+
+
5. Keine Erhebung personenbezogener Daten
+
Diese Website enthält keine Formulare, kein Tracking, keine Analysedienste und keine Werbung. Es werden keine personenbezogenen Daten über die in den Abschnitten 2 und 3 beschriebenen technisch notwendigen Übermittlungen hinaus erhoben.
+
+
6. Ihre Rechte
+
Sie haben gemäss dem Bundesgesetz über den Datenschutz (nDSG) sowie der EU-Datenschutz-Grundverordnung (DSGVO) das Recht auf Auskunft, Berichtigung, Löschung und Herausgabe Ihrer Personendaten. Für entsprechende Anfragen wenden Sie sich bitte an die im Impressum genannte Kontaktadresse.
+
+
7. Änderungen
+
Diese Datenschutzerklärung kann jederzeit angepasst werden. Die jeweils aktuelle Fassung ist auf dieser Seite abrufbar.