Module: MmEsSearch::Utils::FacetRowUtils
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/mm_es_search/utils/facet_row_utils.rb
Instance Method Summary collapse
- #checked_rows ⇒ Object
- #find_row_by_params(params) ⇒ Object
- #get_checked_row_params(check_mark) ⇒ Object
- #positively_checked_rows ⇒ Object
- #required? ⇒ Boolean
- #rows_checked_and ⇒ Object
- #rows_checked_not ⇒ Object
- #rows_checked_or ⇒ Object
- #to_filter ⇒ Object
- #unchecked_rows ⇒ Object
- #unused? ⇒ Boolean
- #used? ⇒ Boolean
- #used_or_required? ⇒ Boolean
Instance Method Details
#checked_rows ⇒ Object
34 35 36 37 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 34 def checked_rows return [] if rows.empty? rows.select {|row| row.checked?} end |
#find_row_by_params(params) ⇒ Object
28 29 30 31 32 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 28 def find_row_by_params(params) rows.detect do |row| required_row_fields.all? {|field| row[field] == params[field]} end end |
#get_checked_row_params(check_mark) ⇒ Object
80 81 82 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 80 def get_checked_row_params(check_mark) checked_rows.select {|row| row.checked == check_mark} .map {|row| row.attributes.only(*required_row_fields)} end |
#positively_checked_rows ⇒ Object
39 40 41 42 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 39 def positively_checked_rows return [] if rows.empty? rows.select {|row| ["and", "or"].include?(row.checked)} end |
#required? ⇒ Boolean
12 13 14 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 12 def required? required end |
#rows_checked_and ⇒ Object
44 45 46 47 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 44 def rows_checked_and return [] if rows.empty? rows.select {|row| row.checked == 'and'} end |
#rows_checked_not ⇒ Object
54 55 56 57 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 54 def rows_checked_not return [] if rows.empty? rows.select {|row| row.checked == 'not'} end |
#rows_checked_or ⇒ Object
49 50 51 52 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 49 def rows_checked_or return [] if rows.empty? rows.select {|row| row.checked == 'or'} end |
#to_filter ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 64 def to_filter if show_missing build_filter else used_rows = checked_rows return nil if used_rows.empty? and_array = get_checked_row_params('and') or_array = get_checked_row_params('or') not_array = get_checked_row_params('not') build_filter(and_array, or_array, not_array) end end |
#unchecked_rows ⇒ Object
59 60 61 62 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 59 def unchecked_rows return [] if rows.empty? rows.select {|row| row.checked? == false} end |
#unused? ⇒ Boolean
24 25 26 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 24 def unused? !used? end |
#used? ⇒ Boolean
20 21 22 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 20 def used? checked_rows.any? || show_missing end |
#used_or_required? ⇒ Boolean
16 17 18 |
# File 'lib/mm_es_search/utils/facet_row_utils.rb', line 16 def used_or_required? used? || required? end |