From e66e4541b79a2483682e806216c47a5b3809f9d7 Mon Sep 17 00:00:00 2001 From: MoisesMachado Date: Thu, 3 Jul 2008 21:06:48 +0000 Subject: [PATCH] ActionItem501: limiting the number of objects shown in the search results to 6 and adding a counter of total hits on the 'see all' sub tab --- app/controllers/public/search_controller.rb | 2 +- app/models/category_finder.rb | 6 +----- app/models/environment_finder.rb | 7 +------ app/views/search/_display_results.rhtml | 2 +- test/unit/category_finder_test.rb | 2 +- test/unit/environment_finder_test.rb | 2 +- 6 files changed, 6 insertions(+), 15 deletions(-) diff --git a/app/controllers/public/search_controller.rb b/app/controllers/public/search_controller.rb index db822dd..f9d26c1 100644 --- a/app/controllers/public/search_controller.rb +++ b/app/controllers/public/search_controller.rb @@ -113,7 +113,7 @@ class SearchController < ApplicationController # limit the number of results per page # TODO: dont hardcore like this def limit - 10 + (@searching.size == 1) ? 10 : 6 end public diff --git a/app/models/category_finder.rb b/app/models/category_finder.rb index 5b76805..c1a9c9d 100644 --- a/app/models/category_finder.rb +++ b/app/models/category_finder.rb @@ -35,11 +35,7 @@ class CategoryFinder def count(asset, query='', options={}) # because will_paginate needs a page options = {:page => 1}.merge(options) - if query.blank? - find(asset, query, options).total_entries - else - find(asset, query, options).total_hits - end + find(asset, query, options).total_entries end def most_commented_articles(limit=10) diff --git a/app/models/environment_finder.rb b/app/models/environment_finder.rb index 13cfdca..2ec4436 100644 --- a/app/models/environment_finder.rb +++ b/app/models/environment_finder.rb @@ -49,12 +49,7 @@ class EnvironmentFinder def count(asset, query = '', options = {}) # because will_paginate needs a page options = {:page => 1}.merge(options) - if query.blank? - # SLOW - find(asset, query, options).total_entries - else - find(asset, query, options).total_hits - end + find(asset, query, options).total_entries end end diff --git a/app/views/search/_display_results.rhtml b/app/views/search/_display_results.rhtml index 8b4e463..cdf0c06 100644 --- a/app/views/search/_display_results.rhtml +++ b/app/views/search/_display_results.rhtml @@ -17,7 +17,7 @@ <%= @names[name] %> <% end %> - <%= link_to _('see all...'), params.merge(:action => 'index', :find_in => [ name ]), :class => 'see-more' %> + <%= link_to _('see all (%d)') % results.total_entries, params.merge(:action => 'index', :find_in => [ name ]), :class => 'see-more' %> <% end %> <% partial = partial_for_class results.first.class %>
diff --git a/test/unit/category_finder_test.rb b/test/unit/category_finder_test.rb index f568ff3..5054d8f 100644 --- a/test/unit/category_finder_test.rb +++ b/test/unit/category_finder_test.rb @@ -215,7 +215,7 @@ class CategoryFinderTest < ActiveSupport::TestCase @finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) - results.expects(:total_hits).returns(99) + results.expects(:total_entries).returns(99) assert_equal 99, @finder.count('people', 'my query', {}) end diff --git a/test/unit/environment_finder_test.rb b/test/unit/environment_finder_test.rb index 7cc47ab..623fc4b 100644 --- a/test/unit/environment_finder_test.rb +++ b/test/unit/environment_finder_test.rb @@ -120,7 +120,7 @@ class EnvironmentFinderTest < ActiveSupport::TestCase finder.expects(:find).with('people', 'my query', kind_of(Hash)).returns(results) - results.expects(:total_hits).returns(99) + results.expects(:total_entries).returns(99) assert_equal 99, finder.count('people', 'my query', {}) end -- libgit2 0.21.2