Files
DogFatherGitandClaude Opus 5 5d0ea11570 Arbeit der parallelen Session in git gesichert (war nur auf dem Server)
Diese Änderungen liefen bereits live auf dem Server, lagen dort aber
ausschließlich als nicht eingecheckte Arbeitskopie — bei jedem Deploy
(stash/pull/pop) und bei jedem Serverproblem wären sie verloren gewesen.
Deshalb hier unverändert in git übernommen, bevor darauf aufgebaut wird.

Enthalten (nicht von mir gebaut, nur gesichert):
- Supporter: eigener fester Zugangscode statt Einmalcode-Login
  (Migration 0009, lib/crypto.js scrypt-Hash, routes/supporter.js,
  abonnieren.html, supporter.html, i18n-abonnieren/-supporter)
- Stimmen: Profilbilder (Migration 0010, routes/testimonials.js)
- Event-Bild-Upload: voller Pfad statt relativem (routes/events.js)
- Neue/überarbeitete Hintergrundbilder für viele Seiten
- Teilen-Funktion (streamplan.js, i18n-index/-streamplan, main.css)

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-08-21 17:35:14 +02:00

28 lines
1.4 KiB
SQL

-- =====================================================================
-- 0009_supporter_access_code.sql — Eigener, fester Zugangscode je Supporter
--
-- Nutzer-Wunsch 21.08.2026: "wieso sollte ich wieder ein code bekommen,
-- mach die anmeldung einfach, die leute sollen nach der registrierung einen
-- festen code erstellen können für sich selbst und fertig. mit dem sie rein
-- kommen."
--
-- Bis hierher lief JEDER Login über einen 6-stelligen Einmalcode per E-Mail
-- (supporter_auth_codes) — auch für längst registrierte Leute. Ab jetzt legt
-- man bei der Registrierung einen eigenen, dauerhaften Zugangscode fest und
-- kommt damit direkt rein.
--
-- Gespeichert wird NIE der Code selbst, sondern ein scrypt-Hash inkl.
-- zufälligem Salt (Format "scrypt$<salt-hex>$<hash-hex>", siehe
-- lib/crypto.js). Damit ist der Code selbst aus der Datenbank heraus nicht
-- rekonstruierbar — auch nicht von uns.
--
-- Der E-Mail-Einmalcode-Weg bleibt vollständig erhalten: er ist jetzt der
-- "Code vergessen?"-Weg, über den man sich einen neuen Zugangscode setzen
-- kann. Deshalb wird an supporter_auth_codes nichts geändert.
--
-- NULL = Konto aus der Zeit vor dieser Änderung, hat noch keinen eigenen
-- Code. Solche Konten kommen über "Code vergessen?" an einen.
-- =====================================================================
ALTER TABLE supporter_users ADD COLUMN access_code_hash TEXT;
ALTER TABLE supporter_users ADD COLUMN access_code_set_at TEXT;