Sha256: cf2125b0b864916785748b74cf53239ebc788127c39c25d6e46f33b18656077d
Contents?: true
Size: 1.04 KB
Versions: 2
Compression:
Stored size: 1.04 KB
Contents
module Spree module CheckoutWithMollie def update if payment_params_valid? && paying_with_mollie? if @order.update_from_params(params, permitted_checkout_attributes, request.headers.env) payment = @order.payments.last payment.create_transaction! mollie_payment_url = payment.payment_source.payment_url redirect_to mollie_payment_url else render :edit end else super end end end CheckoutController.class_eval do prepend CheckoutWithMollie private def payment_method_id_param params[:order][:payments_attributes].first[:payment_method_id] end def paying_with_mollie? payment_method = PaymentMethod.find(payment_method_id_param) mollie_payment_method?(payment_method) end def payment_params_valid? (params[:state] === 'payment') && params[:order][:payments_attributes] end def mollie_payment_method?(payment_method) payment_method.is_a?(Gateway::MollieGateway) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
spree_mollie_gateway-0.1.1 | app/controllers/spree/checkout_controller_decorator.rb |
spree_mollie_gateway-0.1.0 | app/controllers/spree/checkout_controller_decorator.rb |