internetee-registry/app/models/payments.rb
Maciej Szlosarczyk a1bbdc0d8e
Handle missing values in configuration
Allow for nil values in `ENV['payment_intermediaries']` and `ENV['payments_banks']`
2018-04-26 14:34:09 +03:00

15 lines
558 B
Ruby

module Payments
PAYMENT_INTERMEDIARIES = ENV['payments_intermediaries'].to_s.strip.split(', ').freeze
PAYMENT_BANKLINK_BANKS = ENV['payments_banks'].to_s.strip.split(', ').freeze
PAYMENT_METHODS = [PAYMENT_INTERMEDIARIES, PAYMENT_BANKLINK_BANKS].flatten.freeze
def self.create_with_type(type, invoice, opts = {})
raise ArgumentError unless PAYMENT_METHODS.include?(type)
if PAYMENT_BANKLINK_BANKS.include?(type)
BankLink.new(type, invoice, opts)
elsif type == 'every_pay'
EveryPay.new(type, invoice, opts)
end
end
end