feat: Implement complete ticket purchasing flow with new TicketsController │
│
- Create new TicketsController with actions for name collection, creation, and checkout │
- Add dedicated ticket views (new.html.erb, checkout.html.erb, show.html.erb) │
- Update ticket_selection_controller.js to handle form submission via AJAX │
- Add store_cart endpoint in EventsController for session-based cart management │
- Update routes to support new ticket flow: /tickets/new, /create, /checkout │
- Fix attribute name consistency across views (title→name, starts_at→start_time) │
- Add Stripe checkout integration with proper error handling │
- Remove deprecated collect_names flow in favor of streamlined approach │
│
The flow is now: Event selection → AJAX cart storage → Name collection → Checkout → Payment
This commit is contained in:
@@ -208,8 +208,12 @@
|
||||
|
||||
<!-- Right Column: Ticket Selection -->
|
||||
<div class="lg:col-span-1">
|
||||
<%= form_with url: event_checkout_path(@event.slug, @event), method: :post, id: "checkout_form", local: true, data: { controller: "ticket-selection" } do |form| %>
|
||||
|
||||
<%= form_with url: "#", method: :post, id: "checkout_form", local: true, data: {
|
||||
controller: "ticket-selection",
|
||||
ticket_selection_target: "form",
|
||||
ticket_selection_event_slug_value: @event.slug,
|
||||
ticket_selection_event_id_value: @event.id
|
||||
} do |form| %>
|
||||
|
||||
<div class="">
|
||||
<div
|
||||
|
||||
Reference in New Issue
Block a user