Add legal pages, ToS acceptance, and alpha banner
- Journal: Impressum (§5 TMG), Terms of Service, GDPR privacy page - Registration flow: required ToS checkbox, termsAcceptedAt persisted - Alpha banner on Journal (always visible); alpha badge on Planner hero - Footer with legal links + GitHub on both apps - Reduce PII: sendDefaultPii=false, Sentry init only after login (Journal) - Drop Sentry from Planner (no login, no consent possible) - Drop localStorage caching from i18n client detection - Sync SSR i18n resources each request so locale edits HMR without restart Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
6c1cd23358
commit
cc0f44258a
24 changed files with 773 additions and 206 deletions
|
|
@ -76,6 +76,7 @@ export async function finishRegistration(
|
|||
email,
|
||||
username,
|
||||
domain,
|
||||
termsAcceptedAt: new Date(),
|
||||
});
|
||||
|
||||
await db.insert(credentials).values({
|
||||
|
|
@ -158,7 +159,7 @@ export async function registerWithMagicLink(email: string, username: string): Pr
|
|||
const userId = randomUUID();
|
||||
const domain = process.env.DOMAIN ?? "localhost";
|
||||
|
||||
await db.insert(users).values({ id: userId, email, username, domain });
|
||||
await db.insert(users).values({ id: userId, email, username, domain, termsAcceptedAt: new Date() });
|
||||
|
||||
// Create magic token for verification
|
||||
const token = randomBytes(32).toString("base64url");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue