require 'digest/md5' class User < ActiveRecord::Base validates_presence_of :name has_many :feeds, :dependent => :destroy def self.new_account(name, pass, password_conf) return nil unless pass == password_conf User.create :name=>name, :password_hash=>password_to_salted_hash(pass) end def authorize(pass) return nil unless User.password_to_salted_hash(pass) == password_hash self end def self.password_to_salted_hash(pass) Digest::MD5.hexdigest(pass + $user_salt) end def to_s name end end