feat: maintenance banner, activities log, pinned note, event templates, weekly summary cron

Maintenance mode banner:
- App layout reads SystemConfig maintenance_mode at server render time
- Amber sticky banner for regular users, dimmed indicator for superadmin

Baby activities (3 new event types):
- BATH (Bath icon, sky, timer+duration)
- WALK / Balade (Footprints icon, lime)
- TUMMY_TIME (Baby icon, amber)
- Added to EventType enum, EVENT_CONFIG, event-icon.tsx, dashboard quick-log

Pinned family note:
- Shared across all family members, shown at top of dashboard
- Inline edit with author + timestamp; /api/family/pinned-note GET/PATCH
- pinnedNote + pinnedNoteUpdatedAt + pinnedNoteAuthor fields on Family model

Event templates:
- Named quick-log presets per family (type + label + metadata)
- Dashboard row: tap to open pre-filled EventModal; hover ✕ to delete
- Dropdown to create new template; /api/event-templates GET/POST + /[id] PATCH/DELETE
- EventTemplate model in schema

Weekly summary cron:
- POST /api/cron/weekly-summary — auth via Bearer cron_secret (SystemConfig or env)
- Per family, per baby: feeds count, sleep total+avg, diaper count, latest weight
- Sends Pushover to all family members with pushoverUserKey
- Optional body.familyId to target one family

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-13 15:08:54 +02:00
parent 020539e2e2
commit 42c580d7e2
10 changed files with 570 additions and 15 deletions
+7 -5
View File
@@ -56,14 +56,16 @@
🔲 Offline support / PWA install prompt — service worker for offline event logging
🔲 Multi-language UI (FR/EN toggle) — see also pending Bilingual UI
🔲 Weekly summary push notification (Sunday digest: feedings, sleep, weight change)
Weekly summary cron — POST /api/cron/weekly-summary, 7-day digest per baby (feedings, sleep, diapers, weight), Pushover to family; auth via Bearer cron_secret
✅ Baby activities log — BATH, WALK, TUMMY_TIME event types (timer + duration)
✅ Pinned family note — shared editable note on dashboard; /api/family/pinned-note
✅ Event templates — named quick-log presets; create/delete from dashboard; /api/event-templates
✅ Maintenance mode banner — layout reads SystemConfig; amber banner for users, indicator for superadmin
🔲 Growth alert: no weight log in 30 days → push notification
🔲 Feeding pattern AI insight (detect sleep regression, feeding cluster, etc.)
🔲 Contacts / care team directory (pediatrician, midwife, family contact numbers)
🔲 Baby activities log (bath, walk, tummy time) — lightweight custom event types
🔲 Sleep log chart — visual night timeline (bar per night, wake markers)
🔲 Bottle feed from milk stock — direct link: log BOTTLE → decrement milk stock
🔲 Shared family notes / pinned message (daily handoff summary visible to all members)
🔲 Event templates / quick presets (e.g. "usual nap 13:0014:30")
🔲 Data retention policy — auto-archive events older than N months
🔲 Maintenance mode banner in layout (config key exists, layout not wired yet)
🔲 Offline support / PWA install prompt
🔲 Multi-language UI (FR/EN toggle)