diff --git a/plugins/organization_ratings/db/migrate/20151117232133_add_display_comment_to_organization_rating.rb b/plugins/organization_ratings/db/migrate/20151117232133_add_display_comment_to_organization_rating.rb new file mode 100644 index 0000000..248ebb2 --- /dev/null +++ b/plugins/organization_ratings/db/migrate/20151117232133_add_display_comment_to_organization_rating.rb @@ -0,0 +1,5 @@ +class AddDisplayCommentToOrganizationRating < ActiveRecord::Migration + def change + add_column :organization_ratings, :comment_rejected, :boolean, :default => false + end +end diff --git a/plugins/organization_ratings/lib/create_organization_rating_comment.rb b/plugins/organization_ratings/lib/create_organization_rating_comment.rb index 1ce9fb0..85d2a59 100644 --- a/plugins/organization_ratings/lib/create_organization_rating_comment.rb +++ b/plugins/organization_ratings/lib/create_organization_rating_comment.rb @@ -9,19 +9,24 @@ class CreateOrganizationRatingComment < Task attr_accessible :organization_rating_id, :body, :requestor attr_accessible :reject_explanation, :target - before_save :update_comment_body + before_save :update_comment_body, :check_display_comment DATA_FIELDS = ['body'] DATA_FIELDS.each do |field| settings_items field.to_sym end + def check_display_comment + @rating = OrganizationRating.find_by_id(self.organization_rating_id) + @rating.comment_rejected = true if self.status == Status::CANCELLED + end + def update_comment_body if self.organization_rating_comment_id.nil? create_comment else comment = Comment.find_by_id(self.organization_rating_comment_id) - comment.body = get_comment_message + comment.body = self.body comment.save end end diff --git a/plugins/organization_ratings/lib/organization_rating.rb b/plugins/organization_ratings/lib/organization_rating.rb index 3bdeba1..dd16e07 100644 --- a/plugins/organization_ratings/lib/organization_rating.rb +++ b/plugins/organization_ratings/lib/organization_rating.rb @@ -3,7 +3,7 @@ class OrganizationRating < ActiveRecord::Base belongs_to :organization belongs_to :comment - attr_accessible :value, :person, :organization, :comment + attr_accessible :value, :person, :organization, :comment, :comment_rejected validates :value, :presence => true, :inclusion => { @@ -13,6 +13,9 @@ class OrganizationRating < ActiveRecord::Base validates :organization_id, :person_id, :presence => true + def comment_rejected? + return comment_rejected + end def self.average_rating organization_id average = OrganizationRating.where(organization_id: organization_id).average(:value) diff --git a/plugins/organization_ratings/views/shared/_user_rating_container.html.erb b/plugins/organization_ratings/views/shared/_user_rating_container.html.erb index 0123818..b821292 100644 --- a/plugins/organization_ratings/views/shared/_user_rating_container.html.erb +++ b/plugins/organization_ratings/views/shared/_user_rating_container.html.erb @@ -25,7 +25,8 @@