Skip to content

feat(events): close registrations by default on a new event - #514

Merged
harshtandiya merged 1 commit into
developfrom
feat/close-registrations-by-default
Oct 1, 2026
Merged

harshtandiya merged 1 commit into
developfrom
feat/close-registrations-by-default

Conversation

@harshtandiya

Copy link
Copy Markdown
Collaborator

Closes #506

What changed

New events start with registrations closed. A new event goes live as soon as it's created, so until now it could take bookings before the organiser had set up tickets.

  • BuzzEvent.before_insert sets registrations_close_at to now (in the event's timezone) unless a cutoff was passed in. This covers dashboard, Desk, template and proposal creation. Organisers reopen with the existing toggle.
  • registrations_close_at is now no_copy. Without it, Desk's Duplicate copied a future cutoff and the copy started open.
  • Untouched: the default "Normal" ticket type. Closure belongs to the event, not the ticket.
  • Fixtures that book now reopen registrations after creating their event: the shared test-route event in install.py, and five e2e setups through a new openRegistrations helper.

Gotcha: server-side frappe.copy_doc ignores no_copy by default. The duplicate test passes ignore_no_copy=False to match what Desk does.

Demo

Backend only, no dashboard UI change.

Testing

Three new tests in test_events.py: a new event is closed, a cutoff given at creation is kept, and a duplicate is closed. The first and last fail without the fix.

Checks: passing: test_events, test_event_booking, test_guest_booking, test_booking, test_event_eligibility, test_event_booking_refund, test_checkin, test_telemetry. Lint clean. test_buzz_event, test_buzz_coupon_code, test_detailed_event_registrations and www/event/test_event fail locally with the same errors on develop. E2E not run locally; left to CI.

A new event is published as soon as it is created, so it could take
bookings before the organiser had set up tickets and details. Stamp the
registration cutoff at insert unless one was given, and stop Desk's
Duplicate from carrying the source event's cutoff over.

Test and e2e fixtures that book reopen registrations after creating
their event.

Closes #506
@harshtandiya harshtandiya added the skip-demo Skip adding a video / screenshot in PR description. Passes the failing CI for demo addition label Oct 1, 2026

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your trial has ended. Reactivate Greptile to resume code reviews.

@harshtandiya
harshtandiya merged commit 63753cb into develop Oct 1, 2026
9 of 10 checks passed
@harshtandiya
harshtandiya deleted the feat/close-registrations-by-default branch October 1, 2026 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-demo Skip adding a video / screenshot in PR description. Passes the failing CI for demo addition

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Registrations should be closed by default (on newly created event)

1 participant