t.indorf
99d3a63eed
Merge main with notdienst planning and notification improvements
2026-10-12 15:37:10 +02:00
t.indorf
00f602a7aa
feat: complete notdienst planning, quick wins and notifications
2026-10-12 15:34:09 +02:00
t.indorf
e50a8c646b
fix: preserve invitations for admins with a family
2026-10-10 07:26:25 +02:00
t.indorf
e6a30be579
Merge family absence flows while preserving security hardening
2026-10-10 07:08:41 +02:00
t.indorf
b915857951
fix(deploy): preserve credential blocking through hosting parser
2026-10-09 23:55:16 +02:00
t.indorf
add96fb40b
fix(deploy): isolate application from hosting owner credentials
2026-10-09 23:51:06 +02:00
t.indorf
4c99662f6e
Document loopback-only local deployment after test-data reset
2026-10-09 23:32:12 +02:00
t.indorf
a9f57acf70
Merge current features with security hardening and automatic safe initialization
2026-10-09 23:29:19 +02:00
t.indorf
8915fe7df6
Improve family invitations and absence management flows
2026-10-09 22:59:36 +02:00
t.indorf
656ada80bd
Harden authentication, tenant isolation and security boundaries
2026-10-09 22:49:55 +02:00
t.indorf
4702bf5abb
feat: create and invite educators in a single form
2026-10-09 21:59:04 +02:00
t.indorf
979f795341
feat: add parent announcements and family or child event responses
2026-10-09 21:44:19 +02:00
t.indorf
2d3b82eb80
docs: explain deployment, Resend setup and mail operations
2026-10-09 21:18:31 +02:00
t.indorf
8b32e4a832
feat: add household emergency duty alarms and deadline worker
2026-10-09 11:02:24 +02:00
t.indorf
a96ba0fd84
Document agreed emergency duty alert workflow
2026-10-09 10:10:50 +02:00
t.indorf
90b8843cda
Add educator email invitations and staff notification preferences
2026-10-08 11:32:38 +02:00
t.indorf
043fed2e46
Add educator leave management and working time accounts
2026-10-07 15:25:55 +02:00
t.indorf
ec3f4f933d
test: make calendar actions testable from CLI and add integration test script
2026-05-23 19:20:54 +02:00
t.indorf
3ce5638449
feat: implement emergency duty (Notdienst) swapping for parents
2026-05-23 19:18:30 +02:00
t.indorf
4cd16773c1
Merge branch 'codex/live-testplan-doc'
2026-05-23 12:47:44 +02:00
t.indorf
74dc2d6b57
Merge branch 'codex/notdienst-plan-fix'
...
# Conflicts:
# src/app/dashboard/notdienst/plan/plan-view.tsx
2026-05-23 12:47:35 +02:00
t.indorf
27c5a6940a
feat: implement premium responsive mobile shell and drawer
2026-05-22 15:50:03 +02:00
t.indorf
f28956194c
feat: add directory opt-out sync and layout/xss seed data extensions
2026-05-22 15:22:12 +02:00
t.indorf
e9595fab21
feat: show family assignment counts in notdienst planning dropdown and support editing unassigned days in published plans
2026-05-21 14:29:13 +02:00
t.indorf
f6acb3d271
feat: default to Month view and implement household services filter toggle for parents
2026-05-21 13:24:42 +02:00
t.indorf
339563bf4d
feat: display published Notdienst assignments in appointment calendar with custom styling for own assignments
2026-05-21 13:04:52 +02:00
t.indorf
9915c8213e
fix(notdienst): resolve timezone offset mismatch in plan generation and fix linter warning in calendar modal
2026-05-21 12:53:46 +02:00
t.indorf
7eaa198a29
fix(notdienst): resolve timezone offset mismatch in plan generation
2026-05-21 12:41:18 +02:00
t.indorf
cf3fb82afe
Mark all TODOs as completed in UI-TODO.md
2026-05-21 11:41:50 +02:00
t.indorf
88f9c156fc
Merge remote-tracking branch 'origin/main' into codex/notdienst-month-settings
2026-05-21 10:47:14 +02:00
t.indorf
ab7432f3a3
Merge branch 'codex/replace-alert-dialogs' into codex/notdienst-month-settings
2026-05-21 10:46:31 +02:00
t.indorf
84aae1d72e
Implement missing UI button features, filters, search, and view toggles across all modules
2026-05-21 10:44:23 +02:00
t.indorf
beffba65c5
Document UI no-op follow-ups
2026-05-20 23:51:10 +02:00
t.indorf
ec2e0b01e9
Replace native confirms with dialogs
2026-05-20 23:49:42 +02:00
t.indorf
89364e9011
Replace native confirms with dialogs
2026-05-20 23:48:40 +02:00
t.indorf
e7eb43462c
Fix server/client component boundary issue with reasonColor/reasonLabel helper functions by moving them to shared utils
2026-05-20 23:09:59 +02:00
t.indorf
e25a3bcc04
Extend database seed script with extra families, RSVP events, draft plans, pending alerts, attachments, and audit logs
2026-05-20 23:05:54 +02:00
t.indorf
1c5d2f10ac
Apply linen design system across app
2026-05-20 22:47:52 +02:00
t.indorf
99ff978116
Fix live test follow-up issues
2026-05-19 14:28:32 +02:00
t.indorf
3fa3b9b108
Merge branch 'codex/fix-invite-activation'
2026-05-19 11:14:28 +02:00
t.indorf
84714b8b32
Fix server action state exports
2026-05-19 11:09:53 +02:00
t.indorf
811468a22b
Merge branch 'codex/improve-invite-email'
2026-05-19 10:51:57 +02:00
t.indorf
968d108c28
Improve invite email layout
2026-05-19 10:29:42 +02:00
t.indorf
b5eb288104
Merge branch 'codex/fix-public-landing-clean'
2026-05-18 16:56:45 +02:00
t.indorf
ce1a5c9e42
Make landing page public and redirect auth users directly
2026-05-18 16:55:21 +02:00
t.indorf
5dca7c76f8
testplan
2026-05-17 23:55:35 +02:00
t.indorf
6c79e0a8e1
Merge claude/profil-and-mail-fixes into main
...
Fix mail layouts, /invite form-reset, profile validation
2026-05-17 23:54:07 +02:00
t.indorf
935845ce56
Merge claude/onboarding-fixes into main
...
Persist values, tighten validation, and a11y on /onboarding
2026-05-17 23:53:57 +02:00
t.indorf
cb4f7409bc
Merge claude/register-fixes into main
...
Persist values, a11y errors, and aria-invalid on /register
2026-05-17 23:53:38 +02:00
t.indorf and Claude Opus 4.7
fa06da324c
Fix mail layouts, /invite form-reset, profile validation
...
Mail templates (6 templates touched):
- New shared `_styles.ts` exports a robust font stack starting with
Arial/Helvetica so mail readers that lack -apple-system and
BlinkMacSystemFont don't fall back to Monospace (observed in at least
one webmail client).
- `fontFamily` is now set on every text-bearing element, not only on
`<Body>`, because some clients (Outlook, several webmail readers) do
not inherit body CSS into nested sections.
- ASCII substitutions are gone: "Ueber" → "Über", "fuer" → "für",
"bestaetigen" → "bestätigen", "uebernehmen" → "übernehmen",
"verlaesslich" → "verlässlich".
- InviteEmail + NewsEmail buttons switch from the off-brand yellow
(#f0b84b) to the brand dark green so the CTA matches the header.
/invite form:
- InviteState gains an `attempt` counter plus echoed checkbox `values`,
mirroring the /register and /onboarding fix from earlier branches. A
failed submit no longer wipes the Datenschutz / Adressbuch-Opt-In
ticks. Passwords stay empty for security.
- Field error <p> elements gain role="alert" + aria-live="polite" so
screen readers announce validation failures on submit. Inputs use
aria-describedby to link to error / helper text.
Profile validation:
- Telephone numbers must match a permissive pattern that still rejects
obvious garbage (previously "abc-123-not-a-phone" was accepted).
- Postal codes must match an alphanumeric pattern of 3–10 chars
(previously "ABCDE" was accepted).
- Child date-of-birth is now validated via superRefine: it must be a
parseable date, not in the future, and not before 1900. Previously a
kid born in 2030 was accepted.
- The three Profil server actions now surface the first Zod issue
message instead of generic "Ungültige Eingabedaten." toasts.
Misc:
- "fuer" → "für" in the Adressbuch page subtitle.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-17 23:49:01 +02:00