Sha256: 437462b82e346b42599985255796586045a9d518d6e36971a5e7f3d748a05141

Contents?: true

Size: 644 Bytes

Versions: 2

Compression:

Stored size: 644 Bytes

Contents

class BillingIntegration < PaymentMethod

  validates_presence_of :name, :type

  preference :server, :string, :default => 'test'
  preference :test_mode, :boolean, :default => true

  def provider
    integration_options = options
    ActiveMerchant::Billing::Base.integration_mode = integration_options[:server].to_sym
    integration_options = options
    integration_options[:test] = true if integration_options[:test_mode]
    @provider ||= provider_class.new(integration_options)
  end

  def options
    options_hash = {}
    self.preferences.each do |key,value|
      options_hash[key.to_sym] = value
    end
    options_hash
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
spree-0.11.4 app/models/billing_integration.rb
spree-0.11.3 app/models/billing_integration.rb