Sha256: abe0b7ddb5a5abcc08d5b4aa88f135ab597f9ede489c771532c19bf341fe2a88

Contents?: true

Size: 614 Bytes

Versions: 2

Compression:

Stored size: 614 Bytes

Contents

module Locomotive
  module PageRedirect
    class Config
      def self.hash=(hash)
        @@config_hash = ConfigObject.new(hash)
      end
      def self.hash
        @@config_hash ||= ConfigObject.new
      end
    end
    class ConfigObject < Hash
      def initialize(hash = {})
        defaults = {
          redirect_model_slug: nil,
          regexp_field_slug: 'regexp',
          url_field_slug: 'url',
        }
        merge!(defaults)
        hash.select! {|k,v| v && (v.class != String || !v.empty?)}
        merge!(hash.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo})
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
locomotive_page_redirect_plugin-0.1.1 lib/locomotive/page_redirect/plugin/config.rb
locomotive_page_redirect_plugin-0.1.0 lib/locomotive/page_redirect/plugin/config.rb