Rechtsseiten crawlbar: /datenschutz /agb /impressum als eigenständige HTML-Seiten (einzige Quelle, indexierbar) statt 302→Hash; SPA-Module holen Inhalt per fetch+inject (kein Text-Duplikat); Kontaktformular in geteilte contact-form.js; Sitemap+SW ergänzt, v1278

This commit is contained in:
rene 2026-06-09 18:21:49 +02:00
parent 43b6292d08
commit 40d117874b
13 changed files with 1047 additions and 782 deletions

View file

@ -4,7 +4,7 @@
============================================================ */
// ← EINZIGE Stelle für die Version — STATIC_ASSETS und CACHE_VERSION leiten sich ab
const VER = '1277';
const VER = '1278';
const CACHE_VERSION = `by-v${VER}`;
const CACHE_STATIC = `${CACHE_VERSION}-static`;
const CACHE_TILES = 'ban-yaro-tiles-v1'; // bleibt über SW-Updates erhalten
@ -412,7 +412,8 @@ self.addEventListener('fetch', event => {
// zieht der Update-Mechanismus (x-app-version + controllerchange) ohnehin separat.
if (url.pathname.startsWith('/css/') || url.pathname.startsWith('/js/pages/')
|| url.pathname.startsWith('/js/app.js') || url.pathname.startsWith('/js/ui.js')
|| url.pathname.startsWith('/js/api.js') || url.pathname.startsWith('/js/worlds.js')) {
|| url.pathname.startsWith('/js/api.js') || url.pathname.startsWith('/js/worlds.js')
|| url.pathname === '/datenschutz' || url.pathname === '/agb' || url.pathname === '/impressum') {
event.respondWith((async () => {
const network = fetch(event.request).then(response => {
if (response.ok) {