class Filtrum::Configuration

Attributes

model[R]
settings[R]

Public Class Methods

new(model, options = {}) click to toggle source
# File lib/filtrum/config.rb, line 6
def initialize model, options = {}, &block

  @model = model
  @views = []

  @settings = Settings.new Filtrum.settings
  extend @settings.dsl

  instance_eval &block if block
  @frozen = true
end

Public Instance Methods

default_view(options = {}) click to toggle source
# File lib/filtrum/config.rb, line 24
def default_view options = {}, &block
  view :default, options, &block
end
process(params) click to toggle source
# File lib/filtrum/config.rb, line 28
def process params
  raise ConfigurationError, "You must specify a default view" unless view(:default)
  view(:default).process params
end
view(name, options = {}) click to toggle source
# File lib/filtrum/config.rb, line 18
def view name, options = {}, &block
  return @views.find{ |v| v.name.to_s == name.to_s } if @frozen
  @views.delete_if{ |v| v.name.to_s == name }
  View.new(name, self, options, &block).tap{ |v| @views << v }
end