Module: Effective::Providers::Free

Extended by:
ActiveSupport::Concern
Included in:
OrdersController
Defined in:
app/controllers/effective/providers/free.rb

Instance Method Summary collapse

Instance Method Details

#freeObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/controllers/effective/providers/free.rb', line 6

def free
  raise('free provider is not available') unless EffectiveOrders.free?

  @order ||= Order.deep.find(params[:id])

  EffectiveResources.authorize!(self, :update, @order)

  unless @order.free?
    flash[:danger] = 'Unable to process free order with a non-zero total'
    redirect_to effective_orders.order_path(@order)
    return
  end

  order_purchased(
    payment: 'free order. no payment required.',
    provider: 'free',
    card: 'none',
    purchased_url: free_params[:purchased_url],
    current_user: current_user
  )
end

#free_paramsObject



28
29
30
# File 'app/controllers/effective/providers/free.rb', line 28

def free_params
  params.require(:free).permit(:purchased_url, :declined_url)
end