Add methods to get a bug's author details from the first comment

This commit is contained in:
Tom Hughes 2011-05-08 17:59:41 +01:00
parent 882700c5c8
commit f77a3c75be
6 changed files with 32 additions and 16 deletions

View file

@ -46,4 +46,20 @@ class MapBug < ActiveRecord::Base
def visible
return status != "hidden"
end
def author
self.comments.first.author
end
def author_ip
self.comments.first.author_ip
end
def author_id
self.comments.first.author_id
end
def author_name
self.comments.first.author_name
end
end

View file

@ -1,8 +1,8 @@
class MapBugComment < ActiveRecord::Base
set_table_name 'map_bug_comment'
belongs_to :map_bug, :foreign_key => 'bug_id'
belongs_to :user, :foreign_key => 'author_id'
belongs_to :map_bug, :foreign_key => :bug_id
belongs_to :author, :class_name => "User", :foreign_key => :author_id
validates_inclusion_of :event, :in => [ "opened", "closed", "reopened", "commented", "hidden" ]
validates_presence_of :id, :on => :update
@ -13,7 +13,7 @@ class MapBugComment < ActiveRecord::Base
if self.author_id.nil?
self.read_attribute(:author_name)
else
self.user.display_name
self.author.display_name
end
end
end

View file

@ -97,7 +97,7 @@ class Notifier < ActionMailer::Base
def bug_comment_notification(bug_comment, recipient)
common_headers recipient
owner = (recipient == bug_comment.map_bug.comments.first.user);
owner = (recipient == bug_comment.map_bug.author);
subject I18n.t('notifier.map_bug_plain.subject_own', :commenter => bug_comment.author_name) if owner
subject I18n.t('notifier.map_bug_plain.subject_other', :commenter => bug_comment.author_name) unless owner