Sha256: 7584870f12f2ca4354ed6c99e1d3cc74eb1542c6953d6aa6a612b24dcb46cf58

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

module Pesapal
  # Hooks Pesapal to extend Rails and/or modify the initialization process.
  class Railtie < Rails::Railtie
    # Loads pesapal credentials from initializer file depending on environment
    # and fallback to default values if anything goes wrong.
    initializer 'pesapal.load_credentials' do
      path_to_yaml = "#{Rails.root}/config/pesapal.yml"
      if File.exist?(path_to_yaml)
        begin
          config.pesapal_credentials = YAML.load(IO.read(path_to_yaml))[Rails.env]
        rescue Errno::ENOENT
          logger.info('YAML configuration file couldn\'t be found.'); return
        rescue Psych::SyntaxError
          logger.info('YAML configuration file contains invalid syntax. Will use using defaults.'); return
        end
      else
        config.pesapal_credentials = { :callback_url => 'http://0.0.0.0:3000/pesapal/callback',
                                       :consumer_key => '<YOUR_CONSUMER_KEY>',
                                       :consumer_secret => '<YOUR_CONSUMER_SECRET>'
                                      }
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pesapal-1.5.6 lib/pesapal/railtie.rb
pesapal-1.5.5 lib/pesapal/railtie.rb