Sha256: 612d3d8cce43bb1a5142fac558a01bb67b5004296f3f941a2cd2d3ff509277b7

Contents?: true

Size: 923 Bytes

Versions: 30

Compression:

Stored size: 923 Bytes

Contents

module ActiveMerchant
  module Billing
    module PaypalExpressCommon
      def self.included(base)
        if base.respond_to?(:class_attribute)
          base.class_attribute :test_redirect_url
          base.class_attribute :live_redirect_url
        else
          base.class_inheritable_accessor :test_redirect_url
          base.class_inheritable_accessor :live_redirect_url
        end
        base.live_redirect_url = 'https://www.paypal.com/cgi-bin/webscr'
      end

      def redirect_url
        test? ? test_redirect_url : live_redirect_url
      end

      def redirect_url_for(token, options = {})
        options = { review: true, mobile: false }.update(options)

        cmd  = options[:mobile] ? '_express-checkout-mobile' : '_express-checkout'
        url  = "#{redirect_url}?cmd=#{cmd}&token=#{token}"
        url += '&useraction=commit' unless options[:review]

        url
      end
    end
  end
end

Version data entries

30 entries across 30 versions & 4 rubygems

Version Path
activemerchant-1.125.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
archetype2142_activemerchant-1.124.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.124.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.123.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.121.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.120.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.119.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.118.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.117.0 lib/active_merchant/billing/gateways/paypal_express_common.rb
activemerchant-1.116.0 lib/active_merchant/billing/gateways/paypal_express_common.rb