Commit 358bd132a230a36d346233edb832065fff79de4c
1 parent
71494e1c
Exists in
master
and in
29 other branches
[pluginize-solr] Moving category index back
Showing
3 changed files
with
51 additions
and
2 deletions
Show diff stats
app/controllers/public/search_controller.rb
@@ -36,6 +36,26 @@ class SearchController < PublicController | @@ -36,6 +36,26 @@ class SearchController < PublicController | ||
36 | render :action => @results.keys.first if @results.keys.size == 1 | 36 | render :action => @results.keys.first if @results.keys.size == 1 |
37 | end | 37 | end |
38 | 38 | ||
39 | + # view the summary of one category | ||
40 | + def category_index | ||
41 | + @results = {} | ||
42 | + @order = [] | ||
43 | + @names = {} | ||
44 | + limit = MULTIPLE_SEARCH_LIMIT | ||
45 | + [ | ||
46 | + [ :people, _('People'), :recent_people ], | ||
47 | + [ :enterprises, _('Enterprises'), :recent_enterprises ], | ||
48 | + [ :products, _('Products'), :recent_products ], | ||
49 | + [ :events, _('Upcoming events'), :upcoming_events ], | ||
50 | + [ :communities, _('Communities'), :recent_communities ], | ||
51 | + [ :articles, _('Contents'), :recent_articles ] | ||
52 | + ].each do |asset, name, filter| | ||
53 | + @order << asset | ||
54 | + @results[asset] = @category.send(filter, limit) | ||
55 | + raise "No total_entries for: #{asset}" unless @results[asset].respond_to?(:total_entries) | ||
56 | + @names[asset] = name | ||
57 | + end | ||
58 | + end | ||
39 | 59 | ||
40 | def articles | 60 | def articles |
41 | if @search_engine && !@empty_query | 61 | if @search_engine && !@empty_query |
app/helpers/search_helper.rb
@@ -27,7 +27,7 @@ module SearchHelper | @@ -27,7 +27,7 @@ module SearchHelper | ||
27 | 27 | ||
28 | def search_page_title(title, category = nil) | 28 | def search_page_title(title, category = nil) |
29 | title = "<h1>" + title | 29 | title = "<h1>" + title |
30 | - title += '<small>' + category.name + '</small>' if category | 30 | + title += ' - <small>' + category.name + '</small>' if category |
31 | title + "</h1>" | 31 | title + "</h1>" |
32 | end | 32 | end |
33 | 33 | ||
@@ -42,7 +42,7 @@ module SearchHelper | @@ -42,7 +42,7 @@ module SearchHelper | ||
42 | [:enterprises, :products].include?(asset) | 42 | [:enterprises, :products].include?(asset) |
43 | end | 43 | end |
44 | 44 | ||
45 | - def display_results(asset) | 45 | + def display_results(asset = nil) |
46 | if map_capable?(asset) and map_search? | 46 | if map_capable?(asset) and map_search? |
47 | partial = 'google_maps' | 47 | partial = 'google_maps' |
48 | klass = 'map' | 48 | klass = 'map' |
@@ -0,0 +1,29 @@ | @@ -0,0 +1,29 @@ | ||
1 | +<div id="search-page" class="<%= "view-category" if @category %>"> | ||
2 | + | ||
3 | + <% if @category %> | ||
4 | + <div id="category-image"><%= image_tag(@category.image.public_filename(:thumb), :id => 'category-image') if @category.image %></div> | ||
5 | + <% end %> | ||
6 | + | ||
7 | + <%= search_page_title(_('Search Results'), @category) %> | ||
8 | + <%= render :partial => 'search_form', :locals => { :hint => '' } if @search_engine %> | ||
9 | + <%= category_context(@category, params) %> | ||
10 | + <%= display_results %> | ||
11 | + | ||
12 | + <div id="category-childs"> | ||
13 | + <% if @category %> | ||
14 | + <h2> <%= _('Sub-categories') %> </h2> | ||
15 | + <% if @category.children.empty? %> | ||
16 | + <strong id="cat-no-child"><%= _('No sub-categories') %></strong> | ||
17 | + <% else %> | ||
18 | + <ul> | ||
19 | + <% @category.children.each do |c| %> | ||
20 | + <li> <%= link_to_category c, false %> </li> | ||
21 | + <% end %> | ||
22 | + </ul> | ||
23 | + <% end %> | ||
24 | + <% end %> | ||
25 | + </div> | ||
26 | + | ||
27 | +</div> | ||
28 | + | ||
29 | +<div style="clear: both"></div> |