faceted_search 1.1.7 → 1.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ba457ecccedfb1ac77b8c39e7e103273b8f956bd3b5507125c2d245e574d8def
4
- data.tar.gz: c2d29072a1a33100779f1fd6d04c289f61d5b91b9524264ecda440d5f669ca48
3
+ metadata.gz: 74e46e964703fb8393bd61a38c156c4e160f2ddbd1e080bebed62d7a81f570e6
4
+ data.tar.gz: 18dd01b18a593d8cf64f25d844ccbdfbe64c8f4ee425af35de2e607d21caccb6
5
5
  SHA512:
6
- metadata.gz: 3680f3f4867e6116f92f753e9cdbcd2441962adef78c9fe39feb7398c0514e15ff9a8892e53b78a3e264d105ca52781720d35ee9d86443dcd87593261bf278dd
7
- data.tar.gz: 5758788492fc1e5c75c92f84f95e275c355c80d1e12c4ad22d456bf89d3708beec6d905e9e39ddc74c75a3099f981b1606b0bd8c2b874e6ce55ad1a73d5d8e67
6
+ metadata.gz: 9dceb31e9d014a8b7b31e551d13671602730a444c008d5ae4a9c5fe0bde4ae9d0e49d9a13c68b95b4c8c2b777cbe229c9e14a782e1bffba97d497bc3c1b30eac
7
+ data.tar.gz: dafdf064c2c14d93675da97b6687af3bc33c9db04db52949ca57ea8e941c4dd953e111cb7de625403813a119f791c6b781702e9adf503f40e888121c241cf869
@@ -1,5 +1,26 @@
1
1
  module FacetedSearch
2
2
  class Facets::Filter < Facets::Default
3
+ attr_reader :display_method
4
+
5
+ def initialize( name:,
6
+ params:,
7
+ facets:,
8
+ display_method:,
9
+ find_by: nil,
10
+ source: nil,
11
+ habtm: false,
12
+ title: nil)
13
+ super(name: name,
14
+ title: title,
15
+ facets: facets,
16
+ params: params,
17
+ find_by: find_by,
18
+ source: source,
19
+ habtm: habtm,
20
+ title: title)
21
+ @display_method = display_method
22
+ end
23
+
3
24
  def path_for(value)
4
25
  value = value.to_s
5
26
  custom_params = params_array.dup
@@ -41,21 +41,23 @@ module FacetedSearch
41
41
 
42
42
  protected
43
43
 
44
- def search(value, placeholder: nil)
44
+ def search(value, placeholder: nil, title: nil)
45
45
  add(Search.new( name: value,
46
46
  params: params_for(value),
47
47
  placeholder: placeholder,
48
- facets: self))
48
+ facets: self,
49
+ title: title))
49
50
  end
50
51
 
51
- def filter(value, find_by: :id, source: nil, habtm: nil, title: nil)
52
+ def filter(value, find_by: :id, source: nil, habtm: nil, title: nil, display_method: Proc.new { |object| object.to_s })
52
53
  add(Filter.new( name: value,
53
54
  params: params_for(value),
54
55
  facets: self,
55
56
  find_by: find_by,
56
57
  source: source,
57
58
  habtm: habtm,
58
- title: title))
59
+ title: title,
60
+ display_method: display_method))
59
61
  end
60
62
 
61
63
  def params_for(value)
@@ -1,7 +1,9 @@
1
1
  <ul class="faceted__facets list-unstyled">
2
2
  <% facets.list.each do |facet| %>
3
3
  <li>
4
- <b><%= facet.title %></b>
4
+ <% unless facet.title.blank? %>
5
+ <b><%= facet.title %></b>
6
+ <% end %>
5
7
  <%= render facet.kind.underscore, facet: facet %>
6
8
  </li>
7
9
  <% end %>
@@ -4,10 +4,11 @@
4
4
  identifier = value.send facet.find_by
5
5
  selected = facet.selected? identifier
6
6
  results_count = facet.results_with(identifier).count
7
+ display_value = facet.display_method.call(value)
7
8
  next if results_count.zero?
8
9
  %>
9
10
  <li class="faceted__facet__filter__value<%= '--selected' if selected %>">
10
- <%= link_to "#{value} (#{results_count})", facet.facets.path_for(facet, identifier) %>
11
+ <%= link_to "#{display_value} (#{results_count})", facet.facets.path_for(facet, identifier) %>
11
12
  </li>
12
13
  <% end %>
13
14
  </ul>
@@ -1,3 +1,3 @@
1
1
  module FacetedSearch
2
- VERSION = '1.1.7'
2
+ VERSION = '1.1.8'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faceted_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.7
4
+ version: 1.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arnaud Levy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2019-03-18 00:00:00.000000000 Z
13
+ date: 2019-03-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails