Post-Event Mode
Transition your event from active operations to a post-event archive where attendees can still access photos, documents, and polls.
Quick outcome
After your event ends, switch to post-event mode to preserve shared content while removing operational features. Photos, documents, and polls remain accessible. RSVPs, payments, schedule, and announcements are hidden from the public site. Admin access remains full for organizers.
Setup
Switching to post-event mode
Two ways to activate:
- Event admin: Navigate to
/admin/settingsand change Mode fromactivetopost-event - Platform UI: Navigate to
/platform/events/[id]and update the lifecycle settings
Changes take effect immediately — no redeploy needed.
What changes
| Feature | Active mode | Post-event mode |
|---|---|---|
| Homepage | Full content, hero, sections | Redirects to photos or post-event landing |
| Schedule | Visible with full agenda | Hidden from navigation |
| RSVP | Form available | Hidden from navigation |
| Payments | Pay page available | Hidden from navigation |
| Photos | Gallery accessible | Gallery accessible |
| Documents | Available to authorized users | Available to authorized users |
| Polls | Open for voting | Results visible, no new votes |
| Announcements | Email and banners | Existing banners remain |
| Admin dashboard | Full access | Full access |
| Write operations | All allowed | POST/PUT/DELETE return 503 |
Read-only enforcement
In post-event mode, the lifecycle gate in hooks.server.ts blocks all write operations:
Non-GET request → 503 "Event is in read-only mode."This applies to all non-admin routes. Admin routes still allow writes so organizers can manage the archive (moderate photos, update permissions, etc.).
Day-to-day management
Post-event checklist
Before switching:
- Confirm all payments are reconciled — check
/admin/paymentsfor pending items - Export RSVP data — download attendee records for your records
- Review photo gallery — moderate any inappropriate content
- Verify document permissions — ensure the right people can access files
- Close polls — finalize any open polls
- Send a final announcement — let attendees know the site is transitioning
After switching
- The site serves the post-event experience automatically
- Attendees with existing sessions can still access protected content
- New users can still sign in (if on the allowed list) to view photos and documents
- Organizers retain full admin access
Reverting
To return to active mode:
- Change Mode back to
activein/admin/settings - The full site becomes available again immediately
This is useful if you need to reopen RSVPs or accept additional payments.
Attendee experience
After the transition:
- Homepage: Shows a simplified landing pointing to photos and documents
- Photos: Gallery remains fully functional — browse and upload
- Documents: All accessible documents remain downloadable
- Polls: Results visible but voting is closed
- Sign-in: Still works for accessing protected content
- Other pages: Navigation items for RSVP, schedule, and payments are removed
Other lifecycle states
Beyond active/post-event mode, the platform supports additional states:
| State | Behavior |
|---|---|
draft | Event exists but isn't publicly routed — for setup before launch |
suspended | All non-admin routes return 503 — for emergency maintenance |
archived | Read-only, not publicly routed — for long-term storage |
These states are managed through the platform UI at /platform/events/[id], not the event admin.
Troubleshooting
| Symptom | Fix |
|---|---|
| Old site still showing after mode change | Settings are cached for 5 seconds — refresh the page |
| Attendees can't access photos | Verify they're signed in and on the allowed list |
| Write operations still working | Confirm the mode is set to post-event in settings |
| Admin can't make changes | Admin routes bypass read-only mode — check for other errors |
| Banner still showing | Edit or deactivate the banner in /admin/announcements |
Next steps
- Event Settings — configure the mode setting
- Photos — manage the post-event gallery
- Creating Events — start a new event