Events

Create and manage the services, gatherings and one-off events your church runs.

How do I create an event?

Open Events from the admin sidebar and select New event. Fill in:

  • Title — what the event is called (required).
  • Description — optional details about the event.
  • Starts and Ends — the date and time. Times are shown in your church's time zone, which is set under Settings.
  • Location — an optional label, such as "Main Hall".
  • Capacity — an optional expected size, shown to members as a guide. It is informational only — registration is not capped and does not close when the number is reached (enforced caps are a future addition).

Select Create event to save. The new event appears in the events list right away.

How do I edit or cancel an event?

The events list has two tabs: Active (the default) and Trash. Open the menu at the end of an event's row.

  • Edit opens the same form so you can change any detail.
  • Move to trash cancels the event. A trashed event is hidden from your members and your public website. It is not gone — it moves to the Trash tab, where the count next to the tab shows how many trashed events you have.

Because moving to trash is reversible, you can always undo it.

How do I restore or permanently delete an event?

Switch to the Trash tab in the events list. Open the menu on a trashed event:

  • Restore brings it back to the Active tab, visible to members and your public site again.
  • Delete permanently removes the event for good (along with any RSVPs). This cannot be undone, so we ask you to confirm. To protect your records, an event that has attendance check-ins or registrations can't be permanently deleted — it stays in the trash so the history is never lost. Events without those records can be cleared out whenever you like.

How do members RSVP?

Every event lets signed-in members respond Going / Maybe / No from the event's detail page — no setting to turn on. If you need more than a simple headcount (a potluck dish, party size, allergies, a session choice), attach a registration form instead; see Event registration below for the three signup modes.

How do I add a cover image?

While creating or editing an event, select a file under Cover image to upload a picture for the event. After it uploads you'll see a preview; use Remove image to clear it and choose a different one. A good cover image helps the event stand out on your website and in the mobile app.

How do events appear on my public site?

Every upcoming event automatically appears on your church's public website at the Events page (/events) — grouped by month — and each event has its own detail page with the date, location, description and cover image. Past events and trashed events drop off automatically. On an event's detail page, signed-in members can RSVP; everyone else sees a prompt to sign in first.

Where do events show on the public site?

Automatically — you don't add an "events block" anywhere. The Home page shows your next few upcoming events in its main column, and /events lists the full upcoming feed. Both update the moment you save an event in Scheduling.

To feature one event prominently in the homepage hero band (e.g. a "VBS starts Monday" pin), toggle Featured on homepage on the event itself. Featured events show in the band when they're within the next 14 days.

Where do public messages from visitors go?

The public site's /contact page has a message form. When someone sends a message, the visitor gets a confirmation email and your church is notified in-app (and by email). Every message is stored as a lead under Community → Contacts, where the notification deep-links so you can read it and add the sender to your contact list.

Event registration (S-9)

By default, every event uses the binary RSVP control (Going / Maybe / No). For events that need richer signup data — a potluck dish, party size, kids' allergies, a session preference — attach a registration form to the event and let members fill it instead of (or in addition to) the basic RSVP.

Three signup modes

Choose the mode from the Registration section inside the event sheet (create or edit):

ModePicker settingMember sees
RSVP only (default)"No form (RSVP only)"Going / Maybe / No buttons
Required registrationA form attached + "People must register to attend" checkedJust the Register form — submitting also creates a going RSVP automatically. Once registered: a You're registered card with their answers + Edit registration / Cancel registration
Optional sign-upA form attached + the checkbox left uncheckedBoth controls: standard RSVP up top, plus an Add sign-up details button that opens the form. Once sent: a Details sent card with their answers + Edit details / Remove details (the RSVP is never touched)

Attaching a form

In the event sheet's Registration section:

  1. Pick an existing church form from the Attach a form dropdown. Forms in draft or open status are pickable; closed forms aren't. Picking a draft publishes it on the spot (keeping any configured close date), so a gated event is never stuck behind an unpublished form. (Build new forms under Community → Manage forms — see Forms.)
  2. Toggle People must register to attend to make the form replace the RSVP button.
  3. For recurring events, a Scope dropdown appears:
    • Per occurrence — one submission per date. A member registers for Sunday Dec 7 separately from Sunday Dec 14. Right default for week-by-week small groups, dinners, or any event where attendance varies week to week.
    • Per series — one submission for the whole series. Right default for "register once for the spring quarter" patterns.

Where submissions show up

Open the event to its detail page and select the Registrations tab (it appears once a form is attached). It surfaces:

  • One-off / per-series events: a single list of submissions, newest first.
  • Per-occurrence recurring events: an occurrence picker at the top — defaults to the next occurrence; switching dates shows that date's registrations.

Every row displays the submitter's name, when they submitted, the occurrence date (when relevant), and a Show answers expander. The Export CSV button at the top of the panel downloads all submissions visible in the current view.

Updating or cancelling a registration

A registered member sees a You're registered card on the event detail page (web) or via View or edit registration (mobile), showing the answers they sent plus two actions:

  • Edit registration — reopens the form pre-filled with their prior answers; saving rewrites the existing submission (no new row created).
  • Cancel registration — after a confirm dialog, deletes their submission; the database trigger removes the auto-created going RSVP in the same transaction. The slot is freed for someone else to register.

Optional sign-ups behave the same way with Edit details / Remove details — removing details never touches the member's separate RSVP.

The actions hide once the form's status moves to closed or the occurrence date has passed; the database enforces the same rule (members can only rewrite the answers of their own row while the form is open).

Per-occurrence semantics

Per-occurrence events enforce one submission per date via a Postgres unique index. Registering for the same date twice is rejected; registering for a different date succeeds independently. The same model applies to the auto-created RSVP — a member can be going to Dec 7 and have no row at all for Dec 14.

How the form gate is enforced

"People must register to attend" is binding at the database, not just in the UI:

  • A plain RSVP on a required-registration event is rejected unless a matching submission exists (trigger, both directions — cancelling the registration removes the auto-created going RSVP too).
  • The submission must use the form attached to the event, with the occurrence keying matching the registration scope.
  • Required fields must be answered and choice answers must come from the form's declared options — blank or junk registrations are rejected at the database even if a client skips validation.
  • Whether the going RSVP is created is decided server-side from the event's own setting; a client can't opt out of it on a required event, and optional sign-up details can never touch the RSVP.

What's out of scope (still)

  • Payments. Forms don't yet collect payment. The Phase 2 giving stack handles money separately.
  • File uploads in form fields.
  • Conditional / branching fields.
  • Capacity enforcement + waitlists. An event's capacity is informational today — registration does not close when it's reached, and there's no waitlist. Enforced caps + waitlists are a future addition.