21 lines
415 B
Ruby
21 lines
415 B
Ruby
class Registrant < ActiveRecord::Base
|
|
|
|
before_validation :verify
|
|
|
|
|
|
validates :email, :presence => true, :uniqueness => true, :format => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i
|
|
validates :surname, :presence => true
|
|
|
|
|
|
protected
|
|
|
|
def verify(size=16)
|
|
if !self.token
|
|
s = ""
|
|
size.times { s << (i = Kernel.rand(62); i += ((i < 10) ? 48 : ((i < 36) ? 55 : 61 ))).chr }
|
|
self.token = s
|
|
end
|
|
end
|
|
|
|
end
|