Class: Gateway::Przelewy24Controller
- Inherits:
-
Spree::BaseController
- Object
- Spree::BaseController
- Gateway::Przelewy24Controller
- Defined in:
- app/controllers/spree/gateway/przelewy24_controller.rb
Instance Method Summary collapse
-
#comeback ⇒ Object
Result from Przelewy24.
-
#complete ⇒ Object
complete the order.
- #error ⇒ Object
-
#show ⇒ Object
Show form Przelewy24 for pay.
Instance Method Details
#comeback ⇒ Object
Result from Przelewy24
32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'app/controllers/spree/gateway/przelewy24_controller.rb', line 32 def comeback @order = Order.find(params[:order_id]) @gateway = @order && @order.payments.first.payment_method @response = przelewy24_verify(@gateway,@order,params) @amount = 100.0 @amount = params[:p24_kwota].to_f/100 result = @response.split("\r\n") if result[1] == "TRUE" przelewy24_payment_success(@amount) redirect_to gateway_przelewy24_complete_path(:order_id => @order.id, :gateway_id => @gateway.id) else redirect_to gateway_przelewy24_error_path(:gateway_id => @gateway.id, :order_id => @order.id, :error_code => result[2], :error_descr => result[3]) end end |
#complete ⇒ Object
complete the order
48 49 50 51 52 53 54 55 56 57 |
# File 'app/controllers/spree/gateway/przelewy24_controller.rb', line 48 def complete @order = Order.find(params[:order_id]) session[:order_id]=nil if @order.state=="complete" redirect_to order_url(@order, {:checkout_complete => true, :order_token => @order.token}), :notice => I18n.t("payment_success") else redirect_to order_url(@order) end end |
#error ⇒ Object
26 27 28 |
# File 'app/controllers/spree/gateway/przelewy24_controller.rb', line 26 def error end |
#show ⇒ Object
Show form Przelewy24 for pay
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'app/controllers/spree/gateway/przelewy24_controller.rb', line 7 def show @order = Order.find(params[:order_id]) if params[:gateway_id] @gateway = @order.available_payment_methods.find{|x| x.id == params[:gateway_id].to_i } @order.payments.destroy_all payment = @order.payments.create!(:amount => 0, :payment_method_id => @gateway.id) @p24_session_id = Time.now.to_f.to_s @p24_crc = przelewy24_transaction_crc(@gateway,@order,@p24_session_id) if @order.blank? || @gateway.blank? flash[:error] = I18n.t("invalid_arguments") redirect_to :back else @bill_address, @ship_address = @order.bill_address, (@order.ship_address || @order.bill_address) end end end |