class Formidable::Config

Constants

DEFAULTS

Attributes

api_key[RW]
thread[RW]
track_values[RW]
use_ssl[RW]

Public Class Methods

load(settings) click to toggle source
# File lib/formidable/config.rb, line 27
def load(settings)
  # symbolize keys
  settings = settings.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}

  # ensure we have default settings
  settings = DEFAULTS.merge(settings)

  [:api_key, :use_ssl, :track_values, :thread].each do |setting|
    self.send("#{setting}=", settings[setting])
  end
end
load_file(config_file) click to toggle source
# File lib/formidable/config.rb, line 16
def load_file(config_file)
  begin
    config = YAML::load_file(config_file)
    env_config = config[app_env] || {}
    settings = config.merge(env_config)
    load(settings)
  rescue Exception => e
    raise "Configuration error: #{e.message}"
  end
end

Private Class Methods

app_env() click to toggle source
# File lib/formidable/config.rb, line 41
def app_env
  ENV["RACK_ENV"] || ENV["RAILS_ENV"]|| "development"
end
get_key(key, default) click to toggle source
# File lib/formidable/config.rb, line 45
def get_key(key, default)
  val = @env_config["track-values"]
  val = @config["track-values"] if val.nil?
  val = default if val.nil?
  val
end