Add email reminders to calendar episodes; v1.1.15
- Per-episode reminder select (1d/2d/3d/1wk/2wk before publish date) - Server checks hourly; fires Resend email to admin on reminder day - reminderSentAt persisted so reminders don't re-fire; cleared if date or setting changes - Bell indicator on calendar chips; sent confirmation in edit popover Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -50,6 +50,7 @@ import { register as registerStudyComments } from './server/routes/study-comment
|
||||
import { register as registerStudyCertificate } from './server/routes/study-certificate.js'
|
||||
import { register as registerEpisodeScripts } from './server/routes/episode-scripts.js'
|
||||
import { register as registerContact } from './server/routes/contact.js'
|
||||
import { startReminderScheduler } from './server/reminder.js'
|
||||
import { register as registerInboundEmail } from './server/routes/inbound-email.js'
|
||||
import { register as registerQuestions } from './server/routes/questions.js'
|
||||
import { register as registerAnalytics } from './server/routes/analytics.js'
|
||||
@@ -156,6 +157,8 @@ Promise.all([
|
||||
createBackupSnapshot('scheduled').catch(() => {})
|
||||
}, BACKUP_INTERVAL_MS)
|
||||
|
||||
startReminderScheduler()
|
||||
|
||||
// Purge expired study sessions every hour
|
||||
setInterval(() => {
|
||||
const now = Date.now()
|
||||
|
||||
Reference in New Issue
Block a user