Sha256: 3894f8de06c7d47eb2a7cda1ce63aa3e5b54dc7458f10a7544e68a80d3eb5784
Contents?: true
Size: 1.68 KB
Versions: 1
Compression:
Stored size: 1.68 KB
Contents
require 'haml' require 'bcrypt' require 'dynamic_form' require 'kaminari' require 'ransack' require 'nifty/utils' require 'nifty/key_value_store' require 'nifty/attachments' require 'nifty/dialog' module Shoppe class Error < StandardError; end class << self def root File.expand_path('../../', __FILE__) end def config @config ||= begin path = Rails.root.join('config', 'shoppe.yml') if File.exist?(path) config = YAML.load_file(path).with_indifferent_access setup_config(config) config else raise InvalidConfiguration, "Shoppe configuration file missing at #{path}" end end end def setup_config(config) ActionMailer::Base.smtp_settings = config[:smtp_settings] if config[:smtp_settings] end def validate_live_config(*requirements) validate_config(self.config, [], *requirements) end def validate_config(config, scope, *requirements) for req in requirements case req when String, Symbol unless config.keys.include?(req.to_s) raise Shoppe::Errors::InvalidConfiguration, "Missing configuration option '#{scope.join('.')}.#{req}' in shoppe.yml" end when Array validate_config(config, scope, *req) when Hash req.each do |key, value| if config[key] && config[key].is_a?(Hash) scope << key validate_config(config[key], scope, *value) else validate_config(config, scope, key) end end end end end end end # Start your engines. require "shoppe/engine"
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
shoppe-0.0.15 | lib/shoppe.rb |