Commit e66e4541b79a2483682e806216c47a5b3809f9d7
1 parent
d8b607f9
Exists in
master
and in
29 other branches
ActionItem501: limiting the number of objects shown in the search results to 6 a…
…nd adding a counter of total hits on the 'see all' sub tab git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@2144 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
6 changed files
with
6 additions
and
15 deletions
Show diff stats
app/controllers/public/search_controller.rb
@@ -113,7 +113,7 @@ class SearchController < ApplicationController | @@ -113,7 +113,7 @@ class SearchController < ApplicationController | ||
113 | # limit the number of results per page | 113 | # limit the number of results per page |
114 | # TODO: dont hardcore like this | 114 | # TODO: dont hardcore like this |
115 | def limit | 115 | def limit |
116 | - 10 | 116 | + (@searching.size == 1) ? 10 : 6 |
117 | end | 117 | end |
118 | 118 | ||
119 | public | 119 | public |
app/models/category_finder.rb
@@ -35,11 +35,7 @@ class CategoryFinder | @@ -35,11 +35,7 @@ class CategoryFinder | ||
35 | def count(asset, query='', options={}) | 35 | def count(asset, query='', options={}) |
36 | # because will_paginate needs a page | 36 | # because will_paginate needs a page |
37 | options = {:page => 1}.merge(options) | 37 | options = {:page => 1}.merge(options) |
38 | - if query.blank? | ||
39 | - find(asset, query, options).total_entries | ||
40 | - else | ||
41 | - find(asset, query, options).total_hits | ||
42 | - end | 38 | + find(asset, query, options).total_entries |
43 | end | 39 | end |
44 | 40 | ||
45 | def most_commented_articles(limit=10) | 41 | def most_commented_articles(limit=10) |
app/models/environment_finder.rb
@@ -49,12 +49,7 @@ class EnvironmentFinder | @@ -49,12 +49,7 @@ class EnvironmentFinder | ||
49 | def count(asset, query = '', options = {}) | 49 | def count(asset, query = '', options = {}) |
50 | # because will_paginate needs a page | 50 | # because will_paginate needs a page |
51 | options = {:page => 1}.merge(options) | 51 | options = {:page => 1}.merge(options) |
52 | - if query.blank? | ||
53 | - # SLOW | ||
54 | - find(asset, query, options).total_entries | ||
55 | - else | ||
56 | - find(asset, query, options).total_hits | ||
57 | - end | 52 | + find(asset, query, options).total_entries |
58 | end | 53 | end |
59 | 54 | ||
60 | end | 55 | end |
app/views/search/_display_results.rhtml
@@ -17,7 +17,7 @@ | @@ -17,7 +17,7 @@ | ||
17 | <%= @names[name] %> | 17 | <%= @names[name] %> |
18 | </h3> | 18 | </h3> |
19 | <% end %> | 19 | <% end %> |
20 | - <%= link_to _('see all...'), params.merge(:action => 'index', :find_in => [ name ]), :class => 'see-more' %> | 20 | + <%= link_to _('see all (%d)') % results.total_entries, params.merge(:action => 'index', :find_in => [ name ]), :class => 'see-more' %> |
21 | <% end %> | 21 | <% end %> |
22 | <% partial = partial_for_class results.first.class %> | 22 | <% partial = partial_for_class results.first.class %> |
23 | <div class="search-results-innerbox search-results-type-<%= partial %> <%= 'common-profile-list-block' if partial == 'profile' %>"> | 23 | <div class="search-results-innerbox search-results-type-<%= partial %> <%= 'common-profile-list-block' if partial == 'profile' %>"> |
test/unit/category_finder_test.rb
@@ -215,7 +215,7 @@ class CategoryFinderTest < ActiveSupport::TestCase | @@ -215,7 +215,7 @@ class CategoryFinderTest < ActiveSupport::TestCase | ||
215 | 215 | ||
216 | @finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) | 216 | @finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) |
217 | 217 | ||
218 | - results.expects(:total_hits).returns(99) | 218 | + results.expects(:total_entries).returns(99) |
219 | 219 | ||
220 | assert_equal 99, @finder.count('people', 'my query', {}) | 220 | assert_equal 99, @finder.count('people', 'my query', {}) |
221 | end | 221 | end |
test/unit/environment_finder_test.rb
@@ -120,7 +120,7 @@ class EnvironmentFinderTest < ActiveSupport::TestCase | @@ -120,7 +120,7 @@ class EnvironmentFinderTest < ActiveSupport::TestCase | ||
120 | 120 | ||
121 | finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) | 121 | finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) |
122 | 122 | ||
123 | - results.expects(:total_hits).returns(99) | 123 | + results.expects(:total_entries).returns(99) |
124 | 124 | ||
125 | assert_equal 99, finder.count('people', 'my query', {}) | 125 | assert_equal 99, finder.count('people', 'my query', {}) |
126 | end | 126 | end |