Commit Graph

236 Commits

Author SHA1 Message Date
nmemmert 0ba35e0e52 font change 2026-06-04 10:12:13 -04:00
nmemmert bccd1cfa60 TFL Resources 2026-06-04 09:46:51 -04:00
nmemmert 8d95c50041 TFL fix 2026-06-04 09:36:04 -04:00
nmemmert 20397960d6 Truth for life fix 2026-06-04 09:23:11 -04:00
nmemmert cb78b6522d All green. You're good to build and deploy. Here's a summary of everything done since your last commit:
---

**🐛 Bugs fixed**
- Study hub/lesson pages turned gold — CSS merge error with `.study-index-page` fixed
- Lesson announcements not saving — `announcement` field missing from `sanitizeColossiansStudySections` whitelist
- 2FA email method blocked with "not configured" — guard checked `totpSecret` instead of `twoFaMethod`
- `STUDY_REMINDERS_FILE` constant never defined — server would crash on first reminder write
- `sanitizeStudyUsers` stripped all 2FA fields — data lost on every restart
- `scheduleStudyReminders` missing from refactored modules

** Features added**
- Commentary supports paragraph formatting (double newline = new paragraph)
- Lesson announcement banner — full-width gold stripe at top of lesson page
- "Take the Quiz" renamed to "Discussion Questions" throughout
- Students must complete checkpoint before unlocking next lesson (lesson list + Next Lesson button both gate on it)
- No checkpoint questions → simple Mark as Completed button as fallback
- Truth For Life syndication widget on homepage
- Newsletter welcome email updated to your new HTML template

**🔧 Maintenance**
- `server.js` refactored from 6,013 lines into 12 focused modules
2026-06-04 09:17:34 -04:00
nmemmert 07519b4f48 auth fix 2026-06-03 16:14:49 -04:00
nmemmert e11858c2f3 gated lessions 2026-06-03 16:07:54 -04:00
nmemmert a7dc3ede21 remove quiz label 2026-06-03 15:56:17 -04:00
nmemmert b34a78f874 fix agian 2026-06-03 15:49:22 -04:00
nmemmert ae396da72e annoucments 2026-06-03 15:27:21 -04:00
nmemmert 346ecb217c refractor server.js 2026-06-03 15:08:14 -04:00
nmemmert e17a818deb fix 2026-06-03 14:31:22 -04:00
nmemmert 68f6212e9b cool stuff 2026-06-03 14:14:25 -04:00
nmemmert a2c4924191 email templates 2026-06-03 13:14:08 -04:00
nmemmert 49c9994156 New admin panel - People → Study Users 2026-06-03 12:29:05 -04:00
nmemmert 4983524ea4 newsletter fix 2026-06-03 12:08:53 -04:00
nmemmert e561bfa000 analytics fixs 2026-06-03 11:35:45 -04:00
nmemmert b7aa32e4b7 questions fix 2026-06-03 11:18:22 -04:00
nmemmert 3e49ccce62 fix 2026-06-03 11:07:46 -04:00
nmemmert 617998656c Merge pull request #4 from nmemmert/feature/online-class-upgrade
feat: homepage newsletter, Q&A callout, episodes page redesign, SEO/s…
2026-06-03 10:58:06 -04:00
nmemmert b187b19f18 feat: homepage newsletter, Q&A callout, episodes page redesign, SEO/sitemap, asset tagging
- Fix "Invalid Date" on student account page (memberSince guard)
- Fix study community author showing full email instead of username
- Add newsletter sign-up section to homepage (between PRISM and Current Series)
- Add newsletter opt-in nudge to study enrollment flow
- Redesign episodes page: latest episode featured card + per-episode Spotify embed
- Add SEO description field to episodes page (visually hidden, admin-editable)
- Expand default sitemap paths to include /about, /contact, /episodes, /resources, /study, /study/titus, /study/colossians
- Add featured Q&A callout section to homepage
- Add Q&A callout to study hub footer
- Tag both untagged image assets in Asset Manager
2026-06-03 10:56:55 -04:00
nmemmert ef6760c788 Merge pull request #3 from nmemmert/feature/online-class-upgrade
fix
2026-06-02 14:21:44 -04:00
nmemmert 01abb2c8c6 fix 2026-06-02 14:21:03 -04:00
nmemmert bdd80db80a Merge pull request #2 from nmemmert/feature/online-class-upgrade
Feature/online class upgrade
2026-06-02 14:15:26 -04:00
nmemmert 3e050c8909 stuff 2026-06-02 14:13:37 -04:00
nmemmert 5b448aef0f stuff 2026-06-02 14:02:00 -04:00
nmemmert b18f4e88fa Add study completion, checkpoints, lesson announcements, and lesson-thread defaults 2026-06-02 12:03:29 -04:00
nmemmert 33ac2fb5d0 Fix homepage external link placement and publish sanitization 2026-06-01 13:31:26 -04:00
nmemmert 1d536827e3 Improve admin UX and autosave handling 2026-06-01 12:56:26 -04:00
nmemmert b9ed8761db admin redesign: topbar state zone, podcast hub tabs, AnalyticsPanel CSS classes, useAutosave 2026-06-01 11:45:52 -04:00
nmemmert a58d75c425 Add drag-and-drop lesson reordering for admin study sections 2026-05-26 10:09:43 -04:00
nmemmert c1fcf66ef8 Expand study lesson and community pages to use more horizontal space, reduce scrolling 2026-05-21 16:09:42 -04:00
nmemmert b079eb5386 Fix community page auth endpoint to correctly load enrollment status 2026-05-21 14:53:11 -04:00
nmemmert 295c0b61f8 Default to login mode and make signup toggle a prominent button 2026-05-21 14:51:59 -04:00
nmemmert 01143d3ec9 Add community question message type with pre-fill from study community 2026-05-21 14:39:30 -04:00
nmemmert 367ebc88b4 Add dedicated study community page at /study/:studySlug/community 2026-05-21 14:07:17 -04:00
nmemmert eee200cf9c Add study community discussion board and Ask Nate button 2026-05-21 14:04:12 -04:00
nmemmert ffa860d5bc Preserve releasedAt timestamps during admin content sanitize 2026-05-21 12:44:13 -04:00
nmemmert bd047b029c Fix admin publish data loss for unreleased lessons and harden data persistence 2026-05-21 12:39:28 -04:00
nmemmert da5f77c3c6 Generalize study release-date gating across all studies 2026-05-21 12:29:57 -04:00
nmemmert 74e9f57ea5 Add admin study user enrollment list 2026-05-21 12:08:15 -04:00
nmemmert 376088a52b Add study enrollment manager, profile settings, and email verification flow 2026-05-21 11:46:49 -04:00
nmemmert 67f3caf40b Add editable PRISM homepage section 2026-05-20 09:00:22 -04:00
nmemmert c66be30b20 changed checklist order and added what is next when collaped. 2026-05-18 08:47:24 -04:00
nmemmert f14992350c adding 2026-05-18 08:27:24 -04:00
nmemmert db762c5a05 Add admin podcast checklist UX and persistence updates 2026-05-18 08:26:53 -04:00
nmemmert dba5f16bcd Load draft content in admin while keeping public lesson locks 2026-05-12 15:23:17 -04:00
nmemmert da35006a30 Backfill release dates on startup and hard-lock undated lessons 2026-05-12 15:17:08 -04:00
nmemmert d74151d91d Enforce study lesson release locks and schedule biweekly Monday dates 2026-05-12 15:09:38 -04:00
nmemmert 82e9443db8 Remove study sidebar and add account/login CTA button 2026-05-12 13:50:42 -04:00