Commit d8b607f920c351e985374cb0c2aa79d82d6ea796
1 parent
944fc830
Exists in
master
and in
29 other branches
ActionItem509: pagination everywhere
git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@2143 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
5 changed files
with
21 additions
and
12 deletions
Show diff stats
app/controllers/public/search_controller.rb
@@ -89,11 +89,11 @@ class SearchController < ApplicationController | @@ -89,11 +89,11 @@ class SearchController < ApplicationController | ||
89 | def load_product_categories_menu(asset) | 89 | def load_product_categories_menu(asset) |
90 | @results[asset].uniq! | 90 | @results[asset].uniq! |
91 | @categories_menu = ProductCategory.menu_categories(@product_category, environment).map do |cat| | 91 | @categories_menu = ProductCategory.menu_categories(@product_category, environment).map do |cat| |
92 | - hits = @finder.count(:products, @filtered_query, calculate_find_options(asset, nil, nil, cat, @region, params[:radius])) | 92 | + hits = @finder.count(asset, @filtered_query, calculate_find_options(asset, nil, nil, cat, @region, params[:radius])) |
93 | childs = [] | 93 | childs = [] |
94 | # REFACTOR DUPLICATED CODE inner loop doing the same thing that outter loop | 94 | # REFACTOR DUPLICATED CODE inner loop doing the same thing that outter loop |
95 | childs = cat.children.map do |child| | 95 | childs = cat.children.map do |child| |
96 | - child_hits = @finder.count(:products, @filtered_query, calculate_find_options(asset, nil, nil, child, @region, params[:radius])) | 96 | + child_hits = @finder.count(asset, @filtered_query, calculate_find_options(asset, nil, nil, child, @region, params[:radius])) |
97 | [child, child_hits] | 97 | [child, child_hits] |
98 | end.select{|child, child_hits| child_hits > 0 } | 98 | end.select{|child, child_hits| child_hits > 0 } |
99 | [cat, hits, childs] | 99 | [cat, hits, childs] |
app/helpers/search_helper.rb
@@ -39,6 +39,14 @@ module SearchHelper | @@ -39,6 +39,14 @@ module SearchHelper | ||
39 | content_tag('div', data[:toggle] + (render :partial => data[:partial]), :class => "map-or-list-search-results #{data[:class]}") | 39 | content_tag('div', data[:toggle] + (render :partial => data[:partial]), :class => "map-or-list-search-results #{data[:class]}") |
40 | end | 40 | end |
41 | 41 | ||
42 | + def display_item_map_info(item) | ||
43 | + if item.kind_of?(Profile) | ||
44 | + display_profile_info | ||
45 | + elsif item.kind_of?(Product) | ||
46 | + display_product_info | ||
47 | + end | ||
48 | + end | ||
49 | + | ||
42 | def display_profile_info(profile) | 50 | def display_profile_info(profile) |
43 | # FIXME add distance | 51 | # FIXME add distance |
44 | data = '' | 52 | data = '' |
@@ -67,4 +75,9 @@ module SearchHelper | @@ -67,4 +75,9 @@ module SearchHelper | ||
67 | ) | 75 | ) |
68 | end | 76 | end |
69 | 77 | ||
78 | + def pagination_links(collection, options={}) | ||
79 | + options = {:prev_label => '« ' + _('Previous'), :next_label => _('Next') + ' »'}.merge(options) | ||
80 | + will_paginate(collection, options) | ||
81 | + end | ||
82 | + | ||
70 | end | 83 | end |
app/views/search/enterprises.rhtml
app/views/search/people.rhtml
@@ -19,9 +19,10 @@ | @@ -19,9 +19,10 @@ | ||
19 | </div> | 19 | </div> |
20 | <% end %> | 20 | <% end %> |
21 | 21 | ||
22 | - | ||
23 | <%= render :partial => 'search_form', :locals => { :form_title => @query.blank? ? _('Search') : _("Refine your search"), :simple_search => true } %> | 22 | <%= render :partial => 'search_form', :locals => { :form_title => @query.blank? ? _('Search') : _("Refine your search"), :simple_search => true } %> |
24 | 23 | ||
25 | <%= display_results %> | 24 | <%= display_results %> |
26 | 25 | ||
26 | +<%= pagination_links @results.values.first %> | ||
27 | + | ||
27 | <br style="clear:both" /> | 28 | <br style="clear:both" /> |
app/views/search/products.rhtml
@@ -24,19 +24,12 @@ | @@ -24,19 +24,12 @@ | ||
24 | 24 | ||
25 | <%= render :partial => 'product_categories_menu', :object => @categories_menu %> | 25 | <%= render :partial => 'product_categories_menu', :object => @categories_menu %> |
26 | 26 | ||
27 | -<div id="search-results" class="only-one-result-box"> | ||
28 | - <div class="search-results-products search-results-box"> | ||
29 | - <div class="search-results-innerbox search-results-type-product"> | ||
30 | - <ul><%= render :partial => 'product', :collection => @results[:products] %></ul> | ||
31 | - </div> | ||
32 | - <hr /> | ||
33 | - </div> | ||
34 | -</div> | 27 | +<%= display_results %> |
35 | 28 | ||
36 | <% if @categories_menu %> | 29 | <% if @categories_menu %> |
37 | </div><!-- class="has_cat_list" --> | 30 | </div><!-- class="has_cat_list" --> |
38 | <% end %> | 31 | <% end %> |
39 | 32 | ||
40 | -<%= will_paginate @results[:products], :id => 'products-pagination' %> | 33 | +<%= will_paginate @results[:products] %> |
41 | 34 | ||
42 | <br style="clear:both" /> | 35 | <br style="clear:both" /> |