Module: SpreeCmCommissioner::OrderConcern

Included in:
Spree::Api::V2::Tenant::CartController, Spree::Api::V2::Tenant::CheckoutController
Defined in:
app/controllers/concerns/spree_cm_commissioner/order_concern.rb

Instance Method Summary collapse

Instance Method Details

#find_spree_current_orderObject

override



18
19
20
21
22
23
24
25
26
# File 'app/controllers/concerns/spree_cm_commissioner/order_concern.rb', line 18

def find_spree_current_order
  SpreeCmCommissioner::Orders::Find.new.execute(
    store: current_store,
    user: spree_current_user,
    currency: current_currency,
    token: order_token,
    state: params[:state]
  )
end

#spree_current_orderObject

override



4
5
6
7
8
9
10
11
12
13
14
15
# File 'app/controllers/concerns/spree_cm_commissioner/order_concern.rb', line 4

def spree_current_order
  @spree_current_order ||= find_spree_current_order
  return nil if @spree_current_order.blank?

  # Spree doesn't validate this by default (might be a bug).
  # Temporary fix to ensure the order's user ID matches the logged-in user.
  if @spree_current_order.user_id.present? && spree_current_user.present? && @spree_current_order.user_id != spree_current_user.id
    raise CanCan::AccessDenied
  end

  @spree_current_order
end