From 14293f6a70e144230be45ab05665255a036383c9 Mon Sep 17 00:00:00 2001 From: David Carlos Date: Fri, 5 Dec 2014 17:38:32 +0000 Subject: [PATCH] Add catalog of institutions --- lib/ext/search_controller.rb | 12 +++++++++++- lib/ext/search_helper.rb | 3 ++- lib/institution.rb | 8 ++++++++ lib/software_info.rb | 4 ++-- test/functional/search_controller_test.rb | 11 +++++++++++ views/search/institutions.html.erb | 18 ++++++++++++++++++ 6 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 views/search/institutions.html.erb diff --git a/lib/ext/search_controller.rb b/lib/ext/search_controller.rb index a2a020b..dc6cd75 100644 --- a/lib/ext/search_controller.rb +++ b/lib/ext/search_controller.rb @@ -9,6 +9,16 @@ class SearchController @search = results end + def institutions + @titles[:institutions] = _("Institution Catalog") + @category_filters = [] + results = filter_communities_list{|community| community.institution?} + results = results.paginate(:per_page => 24, :page => params[:page]) + @searches[@asset] = {:results => results} + @search = results + end + + def software_infos @titles[:software_infos] = _("Software Catalog") @category_filters = [] @@ -40,4 +50,4 @@ class SearchController end communities_list end -end \ No newline at end of file +end diff --git a/lib/ext/search_helper.rb b/lib/ext/search_helper.rb index e214ce8..55a231e 100644 --- a/lib/ext/search_helper.rb +++ b/lib/ext/search_helper.rb @@ -4,5 +4,6 @@ module SearchHelper COMMON_PROFILE_LIST_BLOCK ||= [] COMMON_PROFILE_LIST_BLOCK << :software_infos + COMMON_PROFILE_LIST_BLOCK << :institutions -end \ No newline at end of file +end diff --git a/lib/institution.rb b/lib/institution.rb index 8cb64a9..2569b00 100644 --- a/lib/institution.rb +++ b/lib/institution.rb @@ -1,4 +1,12 @@ class Institution < ActiveRecord::Base + + SEARCH_FILTERS = [] + SEARCH_DISPLAYS = %w[compact] + + def self.default_search_display + 'compact' + end + belongs_to :governmental_power belongs_to :governmental_sphere belongs_to :juridical_nature diff --git a/lib/software_info.rb b/lib/software_info.rb index 069a185..9b18a85 100644 --- a/lib/software_info.rb +++ b/lib/software_info.rb @@ -1,9 +1,9 @@ class SoftwareInfo < ActiveRecord::Base SEARCH_FILTERS = [] - SEARCH_DISPLAYS = %w[full] + SEARCH_DISPLAYS = %w[compact] def self.default_search_display - 'full' + 'compact' end attr_accessible :e_mag, :icp_brasil, :intern, :e_ping, :e_arq, :operating_platform diff --git a/test/functional/search_controller_test.rb b/test/functional/search_controller_test.rb index 67eb32b..dd15350 100644 --- a/test/functional/search_controller_test.rb +++ b/test/functional/search_controller_test.rb @@ -58,4 +58,15 @@ class SearchControllerTest < ActionController::TestCase assert_not_includes assigns(:searches)[:software_infos][:results], software_without_category.community end + should "institutions_search don't have community or software" do + community = create_community("New Community") + software = create_software_info("New Software") + institution = create_private_institution("New Private Institution", "NPI" , "Brazil", "DF", "Gama", "66.544.314/0001-63") + + get :institutions, :query => "New" + + assert_includes assigns(:searches)[:institutions][:results], institution.community + assert_not_includes assigns(:searches)[:institutions][:results], community + assert_not_includes assigns(:searches)[:institutions][:results], software.community + end end diff --git a/views/search/institutions.html.erb b/views/search/institutions.html.erb new file mode 100644 index 0000000..1ddf80d --- /dev/null +++ b/views/search/institutions.html.erb @@ -0,0 +1,18 @@ +<%= search_page_title( @titles[@asset], @category ) %> + +<%= render :partial => 'search_form', :locals => { :hint => _("Type words about the %s you're looking for") % @asset.to_s.singularize } %> + +<%= render :partial => 'results_header' %> + +<%= display_results(@searches, @asset) %> +<% if params[:display] != 'map' %> + <%= pagination_links @searches[@asset][:results] %> +<% end %> + +
+ +<% if @asset == :product %> + <%= javascript_tag do %> + jQuery('.search-product-price-details').altBeautify(); + <% end %> +<% end %> -- libgit2 0.21.2