Commit cf443b587929c72c3dfec3561547bc2771e18593
Committed by
Álvaro Fernando Matos de Souza
1 parent
c27d0ec5
Exists in
master
and in
79 other branches
Add SoftwareHighlightBlock
Signed-off-by: Hebert Douglas <hebertdougl@gmail.com> Signed-off-by: Luciano Prestes Cavalcanti <lucianopcbr@gmail.com>
Showing
4 changed files
with
31 additions
and
1 deletions
Show diff stats
lib/ext/search_controller.rb
@@ -59,8 +59,14 @@ class SearchController | @@ -59,8 +59,14 @@ class SearchController | ||
59 | 59 | ||
60 | def get_filtered_software_list | 60 | def get_filtered_software_list |
61 | params[:query] ||= "" | 61 | params[:query] ||= "" |
62 | + | ||
62 | filtered_software_list = SoftwareInfo.search_by_query(params[:query]) | 63 | filtered_software_list = SoftwareInfo.search_by_query(params[:query]) |
63 | 64 | ||
65 | + if params[:only_softwares] | ||
66 | + params[:only_softwares].collect!{ |software_name| software_name.to_slug } | ||
67 | + filtered_software_list = SoftwareInfo.all.select{ |s| params[:only_softwares].include?(s.identifier) } | ||
68 | + end | ||
69 | + | ||
64 | category_ids = get_filter_category_ids | 70 | category_ids = get_filter_category_ids |
65 | 71 | ||
66 | unless category_ids.empty? | 72 | unless category_ids.empty? |
lib/software_communities_plugin.rb
@@ -39,7 +39,8 @@ class SoftwareCommunitiesPlugin < Noosfero::Plugin | @@ -39,7 +39,8 @@ class SoftwareCommunitiesPlugin < Noosfero::Plugin | ||
39 | RepositoryBlock => { :type => [Community] }, | 39 | RepositoryBlock => { :type => [Community] }, |
40 | CategoriesAndTagsBlock => { :type => [Community] }, | 40 | CategoriesAndTagsBlock => { :type => [Community] }, |
41 | CategoriesSoftwareBlock => { :type => [Environment] }, | 41 | CategoriesSoftwareBlock => { :type => [Environment] }, |
42 | - SearchCatalogBlock => { :type => [Environment] } | 42 | + SearchCatalogBlock => { :type => [Environment] }, |
43 | + SoftwareHighlightsBlock => { :type => [Environment] } | ||
43 | } | 44 | } |
44 | end | 45 | end |
45 | 46 |
@@ -0,0 +1,20 @@ | @@ -0,0 +1,20 @@ | ||
1 | +class SoftwareHighlightsBlock < HighlightsBlock | ||
2 | + | ||
3 | + def self.description | ||
4 | + _('Software Highlights Block') | ||
5 | + end | ||
6 | + | ||
7 | + def help | ||
8 | + _('This block displays the softwares icon into a highlight') | ||
9 | + end | ||
10 | + | ||
11 | + def content(args={}) | ||
12 | + softwares = self.settings[:images].collect {|h| h[:address].split('/').last} | ||
13 | + block = self | ||
14 | + proc do | ||
15 | + render :file => 'blocks/software_highlights', :locals => { :block => block, :softwares => softwares} | ||
16 | + end | ||
17 | + end | ||
18 | + | ||
19 | + | ||
20 | +end |