Class: Spree::KomojuGateway

Inherits:
Gateway
  • Object
show all
Defined in:
app/models/spree/komoju_gateway.rb

Instance Method Summary collapse

Instance Method Details

#auto_capture?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'app/models/spree/komoju_gateway.rb', line 13

def auto_capture?
  false
end

#change_options_to_dollar(options) ⇒ Object

We need to change shipping, tax, subtotal and discount from cents to dollar for Komoju gateway. Because, Komoju gateway supports JPY currency only.

Spree changes price from dollar to cents. Almost payment gateway supports cents only. See. github.com/spree/spree/blob/master/core/app/models/spree/payment/gateway_options.rb



30
31
32
33
# File 'app/models/spree/komoju_gateway.rb', line 30

def change_options_to_dollar(options)
  %i(shipping tax subtotal discount).each { |key| options[key] = options[key] / 100.0 }
  options
end

#gateway_typeObject



35
36
37
# File 'app/models/spree/komoju_gateway.rb', line 35

def gateway_type
  self.class.to_s.split("::Komoju").last.underscore
end

#method_typeObject



39
40
41
# File 'app/models/spree/komoju_gateway.rb', line 39

def method_type
  "komoju_#{gateway_type}"
end

#optionsObject



9
10
11
# File 'app/models/spree/komoju_gateway.rb', line 9

def options
  super.merge(login: preferred_api_key, test: preferred_test_mode, locale: locale)
end

#payment_profiles_supported?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'app/models/spree/komoju_gateway.rb', line 17

def payment_profiles_supported?
  false
end

#payment_source_classObject



43
44
45
# File 'app/models/spree/komoju_gateway.rb', line 43

def payment_source_class
  "Spree::#{gateway_type.camelcase}".constantize
end

#provider_classObject



5
6
7
# File 'app/models/spree/komoju_gateway.rb', line 5

def provider_class
  ActiveMerchant::Billing::KomojuGateway
end

#supports?(source) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'app/models/spree/komoju_gateway.rb', line 21

def supports?(source)
  true
end