Sha256: dec582f5707eacba245c07a3d961365771fe1b4f377c3d1cb9bcbca98317babd

Contents?: true

Size: 1.47 KB

Versions: 41

Compression:

Stored size: 1.47 KB

Contents

module Alchemy
  module Config
  
    def self.parameter(name)
      show[name.to_s]
    end
    
    # Returns the configuration for given parameter name from config/alchemy/config.yml file
    def self.get(name)
      parameter(name)
    end
    
    def self.show
      read_files
    end
    
  private
    
    def self.read_files
      # Looking for any Rails Environment specific configuration
      if File.exists? "#{Rails.root.to_s}/config/alchemy/config_#{Rails.env}.yml"
        config_1 = YAML.load_file( "#{Rails.root.to_s}/config/alchemy/config_#{Rails.env}.yml" )
      else
        config_1 = {}
      end
      
      # Looking for Application specific configuration
      if File.exists? "#{Rails.root.to_s}/config/alchemy/config.yml"
        config_2 = YAML.load_file( "#{Rails.root.to_s}/config/alchemy/config.yml" )
      else
        config_2 = {}
      end
      
      # Reading Alchemy standard configuration
      if File.exists? File.join(File.dirname(__FILE__), '..', '..', 'config/alchemy/config.yml')
        config_3 = YAML.load_file( File.join(File.dirname(__FILE__), '..', '..', 'config/alchemy/config.yml') )
      else
        config_3 = {}
      end
      
      # Mergin all together
      if config_1.blank? && config_3.blank? && config_3.blank?
        raise LoadError, 'No Alchemy config file found!'
      else
        [config_1, config_2, config_3].map(&:stringify_keys!)
        return config_3.merge(config_2.merge(config_1))
      end
    end
    
  end
end

Version data entries

41 entries across 41 versions & 1 rubygems

Version Path
alchemy_cms-2.1.12 lib/alchemy/config.rb
alchemy_cms-2.0.7 lib/alchemy/config.rb
alchemy_cms-2.1.11 lib/alchemy/config.rb
alchemy_cms-2.1.9.1 lib/alchemy/config.rb
alchemy_cms-2.1.9 lib/alchemy/config.rb
alchemy_cms-2.1.8.1 lib/alchemy/config.rb
alchemy_cms-2.1.8 lib/alchemy/config.rb
alchemy_cms-2.1.7 lib/alchemy/config.rb
alchemy_cms-2.1.6 lib/alchemy/config.rb
alchemy_cms-2.1.5 lib/alchemy/config.rb
alchemy_cms-2.1.4 lib/alchemy/config.rb
alchemy_cms-2.1.3 lib/alchemy/config.rb
alchemy_cms-2.1.2 lib/alchemy/config.rb
alchemy_cms-2.1.1 lib/alchemy/config.rb
alchemy_cms-2.1 lib/alchemy/config.rb
alchemy_cms-2.1.rc6 lib/alchemy/config.rb
alchemy_cms-2.1.rc5 lib/alchemy/config.rb
alchemy_cms-2.1.rc4 lib/alchemy/config.rb
alchemy_cms-2.1.rc3 lib/alchemy/config.rb
alchemy_cms-2.1.rc2 lib/alchemy/config.rb