Class: Message

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
lib/generators/has_messages/install/templates/models/message.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_parent_id(parent_id) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 27

def self.next_parent_id(parent_id)
  parent_id = parent_id.to_i - 1
  if self.where(:id => parent_id).empty?
    parent_id = nil
  end
  parent_id
end

.sequence_subject_idObject



20
21
22
23
24
25
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 20

def self.sequence_subject_id
  id = self.maximum(:subject_id).to_i
  id = 0 if id.nil?
  id += 1
  id
end

Instance Method Details

#deleteObject



47
48
49
50
51
52
53
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 47

def delete
  unless self.deleted?
    self.update_attributes!(:deleted => true) 
  else
    self.destroy
  end
end

#fromObject



59
60
61
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 59

def from
  User.find_by_id(self.sender_id)
end

#mark_as_readObject



39
40
41
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 39

def mark_as_read
  self.update_attributes!(:opened => true) 
end

#mark_as_unreadObject



43
44
45
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 43

def mark_as_unread
  self.update_attributes!(:opened => false)
end

#read?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 35

def read?
  self.opened?
end

#toObject



63
64
65
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 63

def to
  User.find_by_id(self.recipient_id)
end

#undeleteObject



55
56
57
# File 'lib/generators/has_messages/install/templates/models/message.rb', line 55

def undelete
  self.update_attributes!(:deleted => false)
end