payment.rb 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. module Payment
  2. require_relative "payment/version"
  3. require_relative 'payment/errors'
  4. require_relative 'payment/base'
  5. require_relative 'payment/paratika_gateway'
  6. require_relative 'payment/test_gateway'
  7. require_relative 'payment/test_cards'
  8. require 'active_support/all' unless defined?(Rails)
  9. require 'csv'
  10. def self.config
  11. @config ||= OpenStruct.new
  12. end
  13. def self.configure
  14. yield(config)
  15. end
  16. def self.active?
  17. config.active
  18. end
  19. def self.adapter
  20. raise "Payment Module is not set" if Payment.config.adapter.nil?
  21. "Payment::#{config.adapter}".constantize
  22. end
  23. def self.print_log(msg)
  24. if defined?(Rails) && Rails.respond_to?(:logger)
  25. Rails.logger.error(msg)
  26. else
  27. require 'logger'
  28. logger = Logger.new(STDOUT)
  29. logger.error(msg)
  30. end
  31. end
  32. def self.debug_message(*args)
  33. self.print_log(args[2])
  34. [(args[0] || { error: "Runtime error: Request failed" }), (args[1] || { error: "Runtime error: Response initializing failed", success: false })]
  35. end
  36. end