Files
aperonight/app/helpers/stripe_helper.rb
kbe 48547f3aad 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
2025-08-30 20:01:59 +02:00

17 lines
502 B
Ruby

module StripeHelper
# Safely call Stripe methods with error handling
def safe_stripe_call(&block)
# Check if Stripe is properly configured
return nil unless Rails.application.config.stripe[:secret_key].present?
# Stripe is now initialized at application startup
Rails.logger.debug "Using globally initialized Stripe"
begin
yield if block_given?
rescue Stripe::StripeError => e
Rails.logger.error "Stripe Error: #{e.message}"
nil
end
end
end