Files
danbooru/app/models/post_vote.rb
2016-02-22 14:11:25 -08:00

26 lines
571 B
Ruby

class PostVote < ActiveRecord::Base
class Error < Exception ; end
belongs_to :post
before_validation :initialize_user, :on => :create
validates_presence_of :post_id, :user_id, :score
validates_inclusion_of :score, :in => [1, -1]
attr_accessible :post_id, :user_id, :score
def self.prune!
where("created_at < ?", 30.days.ago).delete_all
end
def score=(x)
if x == "up"
write_attribute(:score, 1)
elsif x == "down"
write_attribute(:score, -1)
end
end
def initialize_user
self.user_id = CurrentUser.user.id
end
end