lib/supercharged/helpers.rb in supercharged-2.0.0 vs lib/supercharged/helpers.rb in supercharged-2.0.1

- old
+ new

@@ -1,26 +1,27 @@ -module Supercharged::Helpers +module Supercharged + module Helpers + @gateways = {} - @gateways = {} + def self.gateway(name) + @gateways[name.to_sym] || raise("Gateway not registered") + end - def self.gateway(name) - @gateways[name.to_sym] || raise("Gateway not registered") - end + def self.init_gateway(name, options) + klass = gateway_class_by_name(name) + gateway = klass.new(options) + add_gateway(name, gateway) + end - def self.init_gateway(name, options) - klass = gateway_class_by_name(name) - gateway = klass.new(options) - add_gateway(name, gateway) - end + private - private + def self.gateway_class_by_name(name) + "ActiveMerchant::Billing::#{name.to_s.camelcase}Gateway".classify.constantize + rescue NameError + raise "Unknown gateway '#{name}'" + end - def self.gateway_class_by_name(name) - "ActiveMerchant::Billing::#{name.to_s.camelcase}Gateway".classify.constantize - rescue NameError - raise "Unknown gateway '#{name}'" - end - - def self.add_gateway(name, gateway) - @gateways[name.to_sym] = gateway + def self.add_gateway(name, gateway) + @gateways[name.to_sym] = gateway + end end end