Skip to Content Skip to Search
Methods
C
F
N
O
T
Included Modules

Constants

MODELS = { protected_pages: DB::ProtectedPage, content_links: DB::ContentLink }.freeze
 

This all might have been written due to not having ContentLinks STI

Attributes

[R] cast

Class Public methods

for_site(site)

# File engines/member/app/actions/member/content_search/searcher.rb, line 15
def for_site(site)
  new({site_id: site.id})
end

new(scope)

# File engines/member/app/actions/member/content_search/searcher.rb, line 23
def initialize(scope)
  builder = scope_builder(scope)
  @queries = MODELS.values.map(&builder)
end

Instance Public methods

cast_as(&cast)

# File engines/member/app/actions/member/content_search/searcher.rb, line 34
def cast_as(&cast)
  @cast = cast

  self
end

on_models(*only)

# File engines/member/app/actions/member/content_search/searcher.rb, line 40
def on_models(*only)
  @on_models = only.inject([]) { |acc, elt|
    if elt.is_a?(ActiveRecord::Base)
      [*acc, elt]
    elsif elt.respond_to?(:to_sym) && MODELS[elt.to_sym]
      [*acc, MODELS[elt.to_sym]]
    else
      acc
    end
  }

  self
end

to_a()

Also aliased as: to_ary
# File engines/member/app/actions/member/content_search/searcher.rb, line 28
def to_a
  queries.find_all(&method(:use_query?)).flat_map(&method(:cast_query))
end

to_ary()

Alias for: to_a