Sha256: ffd00911b9b35eceb6200f3607fae9484ef0ccac88fde72db5f9b7b2b0418017
Contents?: true
Size: 887 Bytes
Versions: 8
Compression:
Stored size: 887 Bytes
Contents
class MessageThread < ActiveRecord::Base belongs_to :message belongs_to :parent_message, :class_name => 'Message' belongs_to :sender, :class_name => 'User', :foreign_key => "sender_id" belongs_to :recipient, :class_name => 'User', :foreign_key => "recipient_id" before_destroy :mark_messages_deleted def subject parent_message.subject end def creator_name parent_message.sender.eql?(recipient) ? 'Me' : parent_message.sender.login end def self.for(message, user) find(:first, :conditions => {:parent_message_id => (message.parent_id || message.id), :recipient_id => user.id}) end def mark_messages_deleted parent_message.mark_deleted(recipient) parent_message.children.each do |child| child.mark_deleted(recipient) end end def read? message.recipient.eql?(recipient) ? message.read? : 'read' end end
Version data entries
8 entries across 8 versions & 1 rubygems