feat: add RSVP close time to workshops#2691
Conversation
6e34a20 to
539d9fb
Compare
|
Hi Morgan, Thanks for putting this PR together so quickly. In Because this bypasses the new closing time feature, someone could be auto-promoted to the confirmed list after we have already submitted our finalized security list to the venue. Would it be possible to update this logic so waitlist auto-promotions also respect the new |
|
@kikilondon thank you for the clarification! I've added a fix commit |
The rsvp_closes_at column already exists on the workshops table (migration 20150211023345, added in 84f55d0 and later renamed from rsvp_close_time). This commit adds the model layer: virtual attributes, timezone-aware getter, before_validation callback, and validation that close time is before the workshop start.
dcb235a to
d7e14d2
Compare
| date_field = :"#{prefix}_local_date" | ||
| time_field = :"#{prefix}_local_time" | ||
| date_val = send(date_field) | ||
| time_val = send(time_field) |
There was a problem hiding this comment.
Minor: can these be public_send ?
Fixes #2687
What
Add RSVP closing date/time to workshops, mirroring the existing "Open RSVPs at" pattern. Organisers can set when RSVPs close automatically — nil means RSVPs stay open until the workshop starts.
Changes
rsvp_closes_atvirtual attrs (rsvp_close_local_date/rsvp_close_local_time) viadatetime_from_fields, timezone-aware getter, validation that close time is before workshop startWorkshopInvitationController#acceptgated byrsvp_available?; admin attendance management unaffectedVerification
rsvp_closes_atnil → RSVPs stay open (current default)