Files
openfoodnetwork/app/controllers/split_checkout_controller.rb
Jean-Baptiste Bellet 87a0a5846d WIP; only advance order to delivery state
Use the hidden_field_tag rails helper and move it
2021-07-26 15:47:36 +02:00

27 lines
756 B
Ruby

class SplitCheckoutController < CheckoutController
def update
byebug
params_adapter = Checkout::FormDataAdapter.new(permitted_params, @order, spree_current_user)
return action_failed unless @order.update(params_adapter.params[:order] || {})
checkout_workflow(params_adapter.shipping_method_id, params[:advance_to_state] || "delivery")
rescue Spree::Core::GatewayError => e
byebug
rescue_from_spree_gateway_error(e)
rescue StandardError => e
byebug
flash[:error] = I18n.t("checkout.failed")
action_failed(e)
ensure
@order.update_order!
end
private
def redirect_to_payment_gateway
return unless params&.dig(:order)&.dig(:payments_attributes)&.first&.dig(:payments_attributes)
super
end
end