public
Description: El Dorado is a full-stack community web application written in Ruby/Rails.
Homepage: http://almosteffortless.com/eldorado/
Clone URL: git://github.com/trevorturk/el-dorado.git
el-dorado / app / models / message.rb
100644 38 lines (30 sloc) 0.875 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# == Schema Information
# Schema version: 76
#
# Table name: messages
#
# id :integer(11) not null, primary key
# user_id :integer(11)
# body :text
# created_at :datetime
#
 
class Message < ActiveRecord::Base
  
  belongs_to :user
  
  validates_presence_of :body
  
  # TODO can remove w/ rails 2.1
  def self.last
    find(:first, :order => 'id desc')
  end
    
  def self.get
    find(:all, :limit => 50, :order => 'messages.id desc', :include => :user)
  end
  
  def self.more(id)
    find(:all, :limit => 100, :order => 'messages.id desc', :include => :user, :conditions => ['messages.id < ?', id])
  end
  
  def self.refresh(id, current_user)
    find(:all, :order => 'messages.id desc', :include => :user, :conditions => ['messages.id > ? and user_id != ?', id, current_user])
  end
  
  def to_s
    body
  end
end