Files
aperonight/app/views/shared/_flash_messages.html.erb
kbe 6ea3005a65 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:03:34 +02:00

21 lines
899 B
Plaintext
Executable File

<% if flash.any? %>
<div class="container">
<div class="relative w-full flex justify-center p-4 mt-4">
<div class="w-full max-w-xl">
<% flash.each do |type, message| %>
<div class="notification <%= flash_class(type) %> flex items-center gap-3 p-4 rounded-lg mb-3 font-medium w-full box-border"
data-controller="flash-message">
<div class="notification-icon flex items-center shrink-0">
<%= flash_icon(type) %>
</div>
<span class="flex-1"><%= message %></span>
<button data-action="click->flash-message#close"
class="bg-transparent border-none cursor-pointer p-1 text-inherit opacity-70 transition-opacity duration-200">
<i data-lucide="x" class="w-4 h-4"></i>
</button>
</div>
<% end %>
</div>
</div>
</div>
<% end %>