diff --git a/app/controllers/ticket_purchases_controller.rb b/app/controllers/ticket_purchases_controller.rb index e8b33fb0..865459f4 100644 --- a/app/controllers/ticket_purchases_controller.rb +++ b/app/controllers/ticket_purchases_controller.rb @@ -14,9 +14,9 @@ class TicketPurchasesController < ApplicationController message = TicketPurchase.purchase(@conference, current_user, params[:tickets].try(:first)) # The new ticket_purchase has been added to the database. current_user.ticket_purchases contains the new one. count_registration_tickets_after = current_user.count_registration_tickets(@conference) - + # Failed to create ticket purchase - if !message.blank? + unless message.blank? redirect_to conference_tickets_path(@conference.short_title), error: "Oops, something went wrong with your purchase! #{message}" return @@ -25,15 +25,15 @@ class TicketPurchasesController < ApplicationController # Current user already paid for a registration ticket and the current ticket purchase contains one if count_registration_tickets_before == 1 && count_registration_tickets_after > 1 redirect_to conference_physical_tickets_path, - notice: 'You already have tickets for the conference.' + notice: 'You already have tickets for the conference.' return end - # Conference requires a registration ticket but the current user wants to purchase a non-registration ticket - # and does not have a registration ticket + # Conference requires a registration ticket but the current user wants to purchase a non-registration ticket + # and does not have a registration ticket if @conference.registration_ticket_required? && count_registration_tickets_after == 0 redirect_to conference_tickets_path(@conference.short_title), - error: 'Please get at least one registration ticket to continue.' + error: 'Please get at least one registration ticket to continue.' return end @@ -47,7 +47,7 @@ class TicketPurchasesController < ApplicationController # Current user didn't have a registration ticket and is purchasing one if count_registration_tickets_before == 0 && count_registration_tickets_after == 1 redirect_to new_conference_conference_registration_path(@conference.short_title) - else + else redirect_to conference_physical_tickets_path end end diff --git a/app/models/user.rb b/app/models/user.rb index bb68fc0d..85584955 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -348,15 +348,15 @@ class User < ApplicationRecord def count_registration_tickets(conference) count = 0 - for ticket_purchase in ticket_purchases.by_conference(conference) - for physical_ticket in ticket_purchase.physical_tickets + ticket_purchases.by_conference(conference).each do |ticket_purchase| + ticket_purchase.physical_tickets.each do |physical_ticket| if physical_ticket.ticket.registration_ticket count += 1 end end end - return count + count end def self.empty?