Commit 3820e979a998918a514bd4956c89b6a9b3035b20

Authored by Rodrigo Souto
1 parent 1c48df3a

comment: make explicit fail-safe relation with profile and environment

This tests are necessary because comment estabilishes a polymorphic
relation with the source, which creates harsh conditions to determine
how to relate it with the environment.
Showing 1 changed file with 9 additions and 1 deletions   Show diff stats
app/models/comment.rb
@@ -115,7 +115,15 @@ class Comment < ActiveRecord::Base @@ -115,7 +115,15 @@ class Comment < ActiveRecord::Base
115 end 115 end
116 116
117 delegate :environment, :to => :profile 117 delegate :environment, :to => :profile
118 - delegate :profile, :to => :source, :allow_nil => true 118 +
  119 + def environment
  120 + profile && profile.respond_to?(:environment) ? profile.environment : nil
  121 + end
  122 +
  123 + def profile
  124 + return unless source
  125 + source.kind_of?(Profile) ? source : source.profile
  126 + end
119 127
120 include Noosfero::Plugin::HotSpot 128 include Noosfero::Plugin::HotSpot
121 129