Class: Workarea::Search::AdminReviews

Inherits:
Object
  • Object
show all
Includes:
AdminIndexSearch, AdminSorting, Pagination, Query
Defined in:
app/queries/workarea/search/admin_reviews.rb

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ AdminReviews

Returns a new instance of AdminReviews.



11
12
13
# File 'app/queries/workarea/search/admin_reviews.rb', line 11

def initialize(params = {})
  super(params.merge(type: 'review'))
end

Instance Method Details

#facetsObject



19
20
21
22
23
24
25
# File 'app/queries/workarea/search/admin_reviews.rb', line 19

def facets
  super + [
    TermsFacet.new(self, 'state'),
    TermsFacet.new(self, 'rating'),
    TermsFacet.new(self, 'verification')
  ]
end

#fieldsObject



15
16
17
# File 'app/queries/workarea/search/admin_reviews.rb', line 15

def fields
  super + %w(review_text)
end

#sortObject



27
28
29
30
31
32
33
34
35
36
37
# File 'app/queries/workarea/search/admin_reviews.rb', line 27

def sort
  result = super || []

  if params[:sort] == Sort.highest_rating.to_s
    result.prepend(Sort.highest_rating.field => Sort.highest_rating.direction)
  elsif params[:sort] == Sort.lowest_rating.to_s
    result.prepend(Sort.lowest_rating.field => Sort.lowest_rating.direction)
  end

  result
end