Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'digest/sha1'
- class User < ActiveRecord::Base
- validates_presence_of :name, :email, :password, :password_confirmation
- validates_uniqueness_of :name
- attr_accessor :password_confirmation
- validates_confirmation_of :password
- def validate
- errors.add_to_base("missing password") if hashed_password.blank?
- errors.add_to_base("missing email adress") if email.blank?
- end
- def self.authenticate(name, password)
- user = self.find_by_name(name)
- if user
- if user.hashed_password != encrypted_password(password)
- user = nil
- end
- end
- user
- end
- def password
- @password
- end
- def password=(pwd)
- @password = pwd
- return if pwd.blank?
- self.hashed_password = User.encrypted_password(self.password)
- end
- def name
- self.name
- end
- private
- def self.encrypted_password(password)
- Digest::SHA1.hexdigest(password)
- end
- end
Add Comment
Please, Sign In to add comment