Files
danbooru/app/models/post_approval.rb

25 lines
581 B
Ruby

class PostApproval < ActiveRecord::Base
belongs_to :user
belongs_to :post, inverse_of: :approvals
validate :validate_approval
def self.prune!
where("created_at < ?", 1.month.ago).delete_all
end
def validate_approval
if post.is_status_locked?
errors.add(:post, "is locked and cannot be approved")
end
if post.uploader == user
errors.add(:base, "You cannot approve a post you uploaded")
end
if post.approved_by?(user)
errors.add(:base, "You have previously approved this post and cannot approve it again")
end
end
end