app/models/commontator/comment.rb in commontator-4.1.2 vs app/models/commontator/comment.rb in commontator-4.2.0

- old
+ new

@@ -18,10 +18,18 @@ cattr_accessor :acts_as_votable_initialized public + def is_modified? + !editor.nil? + end + + def is_latest? + thread.comments.last == self + end + def is_votable? return true if acts_as_votable_initialized return false unless self.class.respond_to?(:acts_as_votable) self.class.acts_as_votable self.class.acts_as_votable_initialized = true @@ -30,14 +38,10 @@ def get_vote_by(user) return nil unless is_votable? && user && user.is_commontator votes.where(:voter_type => user.class.name, :voter_id => user.id).first end - def is_modified? - !editor.nil? - end - def is_deleted? !deleted_at.blank? end def delete_by(user) @@ -80,17 +84,17 @@ !thread.is_closed? && user == creator && thread.can_be_read_by?(user) end def can_be_edited_by?(user) (!thread.is_closed? && !is_deleted? &&\ - (thread.comments.last == self || thread.config.can_edit_old_comments) &&\ + (is_latest? || thread.config.can_edit_old_comments) &&\ user == creator && thread.config.can_edit_own_comments && thread.can_be_read_by?(user)) ||\ (thread.config.admin_can_edit_comments && thread.can_be_edited_by?(user)) end def can_be_deleted_by?(user) (!thread.is_closed? && (!is_deleted? || editor == user) &&\ - (thread.comments.last == self || thread.config.can_delete_old_comments) &&\ + (is_latest? || thread.config.can_delete_old_comments) &&\ user == creator && thread.config.can_delete_own_comments &&\ thread.can_be_read_by?(user)) ||\ thread.can_be_edited_by?(user) end