Module: MerbAuth::Adapter::ActiveRecord::DefaultModelSetup

Defined in:
lib/merb-auth/adapters/activerecord/model.rb

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/merb-auth/adapters/activerecord/model.rb', line 56

def self.included(base)
  base.instance_eval do
    # Virtual attribute for the unencrypted password
    attr_accessor :password, :password_confirmation
    validates_presence_of     :login, :email
    validates_presence_of     :password,                   :if => :password_required?
    validates_presence_of     :password_confirmation,      :if => :password_required?
    validates_length_of       :password, :within => 4..40, :if => :password_required?
    validates_confirmation_of :password,                   :if => :password_required?
    validates_length_of       :login,    :within => 3..40
    validates_length_of       :email,    :within => 3..100
    validates_uniqueness_of   :login, :email, :case_sensitive => false
    validates_uniqueness_of   :password_reset_key, :if => Proc.new{|m| !m.password_reset_key.nil?}


    before_save :encrypt_password
    before_validation :set_login
    before_create :make_activation_code
    after_create :send_signup_notification
  end
end