diff --git a/src/noosfero-spb/gov_user/lib/gov_user_plugin.rb b/src/noosfero-spb/gov_user/lib/gov_user_plugin.rb index ad14106..ac4f410 100644 --- a/src/noosfero-spb/gov_user/lib/gov_user_plugin.rb +++ b/src/noosfero-spb/gov_user/lib/gov_user_plugin.rb @@ -255,6 +255,11 @@ class GovUserPlugin < Noosfero::Plugin } end + def organization_ratings_plugin_rating_created rating, params + institution = GovUserPlugin::Institution.find(params['gov_user_plugin']['institution_id']) + GovUserPlugin::InstitutionsOrganizationRatings.create!(:institution => institution, :organization_rating => rating) + end + def filter_search_scope(scope, asset) if asset.to_s == 'communities' return [filter_communities(scope), asset] diff --git a/src/noosfero-spb/gov_user/lib/gov_user_plugin/institutions_organization_ratings.rb b/src/noosfero-spb/gov_user/lib/gov_user_plugin/institutions_organization_ratings.rb index 47bc5e1..2d71b10 100644 --- a/src/noosfero-spb/gov_user/lib/gov_user_plugin/institutions_organization_ratings.rb +++ b/src/noosfero-spb/gov_user/lib/gov_user_plugin/institutions_organization_ratings.rb @@ -6,6 +6,9 @@ class GovUserPlugin::InstitutionsOrganizationRatings < Noosfero::Plugin::ActiveR belongs_to :institution, :class_name => 'GovUserPlugin::Institution' belongs_to :organization_rating, :class_name => 'OrganizationRating' + validates_presence_of :institution + validates_presence_of :organization_rating + validate :verify_institution def self.get_institution(rating) diff --git a/src/noosfero-spb/gov_user/test/unit/gov_user_plugin/institutions_organization_ratings_test.rb b/src/noosfero-spb/gov_user/test/unit/gov_user_plugin/institutions_organization_ratings_test.rb index 6af0ee9..2ba0af4 100644 --- a/src/noosfero-spb/gov_user/test/unit/gov_user_plugin/institutions_organization_ratings_test.rb +++ b/src/noosfero-spb/gov_user/test/unit/gov_user_plugin/institutions_organization_ratings_test.rb @@ -10,6 +10,18 @@ class GovUserPlugin::InstitutionsOrganizationRatingsTest < ActiveSupport::TestCa @environment.save! end + should 'validate presence of institution' do + relation = GovUserPlugin::InstitutionsOrganizationRatings.new + relation.valid? + assert relation.errors[:institution].present? + end + + should 'validate presence of organization_rating' do + relation = GovUserPlugin::InstitutionsOrganizationRatings.new + relation.valid? + assert relation.errors[:organization_rating].present? + end + should "validate institution if there is an institution_id" do private_institution = build_private_institution "huehue", "hue", "11.222.333/4444-55" relation = GovUserPlugin::InstitutionsOrganizationRatings.new(:institution => private_institution) @@ -36,4 +48,3 @@ class GovUserPlugin::InstitutionsOrganizationRatingsTest < ActiveSupport::TestCa institution end end - diff --git a/src/noosfero-spb/gov_user/views/organization_ratings_extra_fields_show_institution.html.erb b/src/noosfero-spb/gov_user/views/organization_ratings_extra_fields_show_institution.html.erb index 6c80f73..9299213 100644 --- a/src/noosfero-spb/gov_user/views/organization_ratings_extra_fields_show_institution.html.erb +++ b/src/noosfero-spb/gov_user/views/organization_ratings_extra_fields_show_institution.html.erb @@ -6,4 +6,3 @@ <% end %> - diff --git a/src/noosfero-spb/gov_user/views/ratings_extra_field.html.erb b/src/noosfero-spb/gov_user/views/ratings_extra_field.html.erb index 213bb91..43f8b0d 100644 --- a/src/noosfero-spb/gov_user/views/ratings_extra_field.html.erb +++ b/src/noosfero-spb/gov_user/views/ratings_extra_field.html.erb @@ -1,5 +1,3 @@ -<% #FIXME Ajust this to work according to InstitutionsOrganizationRatings relation. %> -
<%= label_tag "input_institution", _("Organization name or Enterprise name")%> @@ -8,5 +6,5 @@ <%= content_tag(:div, _("No institution found"), :id=>"institution_empty_ajax_message", :class=>"errorExplanation hide-field") %> - <%= hidden_field_tag "organization_rating[institution_id]", "", id: "institution_selected" %> + <%= hidden_field_tag "gov_user_plugin[institution_id]", "", id: "institution_selected" %>
-- libgit2 0.21.2