Sha256: 1c3e4e4739e42542aad8fc471a843304f0b7c524d0227d8c5c6b49759c5e44ef

Contents?: true

Size: 826 Bytes

Versions: 6

Compression:

Stored size: 826 Bytes

Contents

module Spree
  # Singleton class to access the configuration object (AppConfiguration.first by default) and it's preferences.
  #
  # Usage:
  #   Spree::Config[:foo]                  # Returns the +foo+ preference
  #   Spree::Config[]                      # Returns a Hash with all the application preferences
  #   Spree::Config.instance               # Returns the configuration object (AppConfiguration.first)
  #   Spree::Config.set(preferences_hash)  # Set the application preferences as especified in +preference_hash+
  class Config
    include Singleton
    include PreferenceAccess
    
    class << self
      def instance
        return nil unless ActiveRecord::Base.connection.tables.include?('configurations')
        AppConfiguration.find_or_create_by_name("Default configuration")
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
spree-enriquez-0.9.4 lib/spree/config.rb
spree-0.9.4 lib/spree/config.rb
spree-0.9.3 lib/spree/config.rb
spree-0.9.2 lib/spree/config.rb
spree-0.9.1 lib/spree/config.rb
spree-0.9.0 lib/spree/config.rb