Mercurial > zeropaste
view app/models/paste.rb @ 83:ae360c3b0bb0
Disable explain when using jruby because it's not supported.
The patch for this support exist but for some reason still not included
in latest release of the jdbc adapter.
Reference: https://github.com/jruby/activerecord-jdbc-adapter/pull/206
author | Edho Arief <edho@myconan.net> |
---|---|
date | Mon, 15 Oct 2012 03:45:18 -0700 |
parents | 7bb46d9febad |
children | a9dba6a3008b |
line wrap: on
line source
class Paste < ActiveRecord::Base attr_accessible :paste before_validation :paste_limit before_validation :convert_newlines before_validation :set_paste_hash validates :paste, :paste_hash, :ip, :presence => true validates :paste, :length => { :maximum => 1_000_000 } def set_paste_hash self.paste_hash = Digest::SHA512.hexdigest("#{paste}\n") end def convert_newlines self.paste = self.paste.to_s.gsub("\r\n", "\n").gsub("\r", "\n") end def paste_limit ip_post_recent_count = self.class.where(:ip => self.ip).where('created_at > ?', Time.now - 1.hour).count errors.add :base, :limit if ip_post_recent_count > 100 end def self.fix_all self.all.each do |p| p.save end end end