Add study account engagement features; v1.2.4

- Pause reminders: remindersPausedUntil field + scheduler skip + account UI with 7/14/30-day presets
- Email digest mode: reminderFrequency field (immediate/weekly) + weekly digest email + scheduler + account UI toggle
- Admin user list improvements: streak, reengagement, frequency, pause, per-study lesson progress
- Admin manual re-engagement: POST endpoint + tier selector button in admin panel
- Study bookmarks: bookmarkedSectionIds in progress file + POST/DELETE endpoints + toggle button in lesson UI
- Study completion certificate email: auto-sent on first certificate issuance
- Content fields for certificate and weekly digest email templates in admin

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-09-03 15:16:47 -04:00
1 parent 5bc8245ed2
commit 038ef2b039
12 files changed
+540 -38

No files matched your search

+16
View File
@@ -259,6 +259,15 @@ export interface SiteContent {
studyReengagementT3Subject: string
studyReengagementT3Body: string
studyReengagementT3Cta: string
// ── Study Completion Certificate Email ──
studyCertificateEmailSubject: string
studyCertificateEmailBody: string
studyCertificateEmailCtaLabel: string
studyCertificateEmailSignoff: string
// ── Study Weekly Lesson Digest Email ──
studyWeeklyDigestEmailSubject: string
studyWeeklyDigestEmailBody: string
studyWeeklyDigestEmailSignoff: string
// ── Email Change Confirmation ──
emailChangeSubject: string
emailChangeBody: string
@@ -472,6 +481,13 @@ export const DEFAULTS: SiteContent = {
studyReengagementT3Subject: 'Your progress is still here',
studyReengagementT3Body: "Your study progress is still intact and waiting. There's no deadline — come back whenever you're ready.",
studyReengagementT3Cta: 'Open Your Study',
studyCertificateEmailSubject: 'Your certificate is ready',
studyCertificateEmailBody: 'Congratulations — you have completed every lesson in this study. Your certificate is ready to view and share.',
studyCertificateEmailCtaLabel: 'View Certificate',
studyCertificateEmailSignoff: 'Grace and peace,\nVerse by Verse with Nate',
studyWeeklyDigestEmailSubject: 'Your weekly study digest',
studyWeeklyDigestEmailBody: 'Here are the lessons released this week in your study track. Open any to continue where you left off.',
studyWeeklyDigestEmailSignoff: 'Grace and peace,\nVerse by Verse with Nate',
emailChangeSubject: 'Confirm your new email address',
emailChangeBody: 'Click the link below to confirm your new account email. If you did not request this change, ignore this message.',
emailChangeCtaLabel: 'Confirm Email Change',