Rechtsseiten oeffentlich erreichbar: Hash-Routing ohne Login + Pfad-Redirects

- app.js init(): Hash-Route wird auch ohne Login angesteuert — vorher wurden
  anonyme Besucher IMMER auf 'welcome' geworfen, #agb/#datenschutz/#impressum
  liefen damit ins Leere (DSGVO-Problem, broken Links aus iOS-App + SEO-Footer).
  Auth-pflichtige Seiten schuetzt weiterhin der requiresAuth-Guard in navigate().
- main.py: /agb, /datenschutz, /impressum -> 302 auf die SPA-Hash-Routen
  (vor dem SPA-Fallback registriert)
- make bump: v1221
This commit is contained in:
rene 2026-06-06 09:18:28 +02:00
parent 939e48b0c7
commit 695908f937
6 changed files with 33 additions and 17 deletions

View file

@ -3,7 +3,7 @@
Router, State-Management, Navigation, Initialisierung.
============================================================ */
const APP_VER = '1220'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
const APP_VER = '1221'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
const APP_VERSION = '1.6.0'; // ← semantische Version, wird bei make release gesetzt
window.APP_VER = APP_VER; // global verfügbar für andere Module (z.B. offline-indicator)
window.APP_VERSION = APP_VERSION;
@ -1198,7 +1198,11 @@ const App = (() => {
}
const startPage = (hashPage && pages[hashPage]) ? hashPage : 'welcome';
navigate(state.user ? startPage : 'welcome', false, hashParams);
// Hash-Route auch ohne Login ansteuern — öffentliche Seiten (AGB,
// Datenschutz, Impressum, …) müssen für anonyme Besucher erreichbar sein.
// Auth-pflichtige Seiten leitet navigate() über den requiresAuth-Guard
// selbst auf 'welcome' um.
navigate(startPage, false, hashParams);
if (window.Worlds && state.user) window.Worlds.init(state);
}