Module: Searchlight::DSL

Included in:
Search
Defined in:
lib/searchlight/dsl.rb

Instance Method Summary collapse

Instance Method Details

#search_on(target) ⇒ Object



4
5
6
# File 'lib/searchlight/dsl.rb', line 4

def search_on(target)
  @search_target = target
end

#searches(*attribute_names) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/searchlight/dsl.rb', line 8

def searches(*attribute_names)
  include_new_module "SearchlightAccessors" do
    attr_accessor *attribute_names

    # define boolean accessors
    attribute_names.each do |attribute_name|
      define_method("#{attribute_name}?") do
        # Treat 0 (eg, from checkboxes) as false
        !['0', 'false', ''].include?(public_send(attribute_name).to_s.strip) 
      end
    end
  end
end