Mercurial > zeropaste
diff app/models/paste.rb @ 176:a9dba6a3008b
Initial work to add paste deletion.
author | Edho Arief <edho@myconan.net> |
---|---|
date | Fri, 01 Feb 2013 22:24:08 +0700 |
parents | 7bb46d9febad |
children | af80541dc915 |
line wrap: on
line diff
--- a/app/models/paste.rb Thu Jan 31 02:20:55 2013 +0700 +++ b/app/models/paste.rb Fri Feb 01 22:24:08 2013 +0700 @@ -3,13 +3,18 @@ before_validation :paste_limit before_validation :convert_newlines before_validation :set_paste_hash - validates :paste, :paste_hash, :ip, :presence => true + before_validation :set_paste_key + validates :paste, :paste_hash, :key, :ip, :presence => true validates :paste, :length => { :maximum => 1_000_000 } def set_paste_hash self.paste_hash = Digest::SHA512.hexdigest("#{paste}\n") end + def set_paste_key + self.key ||= SecureRandom.hex(4) + end + def convert_newlines self.paste = self.paste.to_s.gsub("\r\n", "\n").gsub("\r", "\n") end