module Challah::UserPasswordable

Public Instance Methods

password!(new_password) click to toggle source

Set the password and password_confirmation in one shortcut method.

# File lib/challah/concerns/user/passwordable.rb, line 4
def password!(new_password)
  self.password = new_password
  self.password_confirmation = new_password
end
password=(value) click to toggle source

Set a password for this user

# File lib/challah/concerns/user/passwordable.rb, line 19
def password=(value)
  if value.to_s.blank?
    @password = nil
    @password_updated = false
  else
    @password = value
    @password_updated = true
  end
end
password_changed?() click to toggle source

Was the password updated

# File lib/challah/concerns/user/passwordable.rb, line 35
def password_changed?
  !!@password
end
password_confirmation=(value) click to toggle source

Set the confirmation when changing a password

# File lib/challah/concerns/user/passwordable.rb, line 30
def password_confirmation=(value)
  @password_confirmation = value
end
password_provider() click to toggle source
# File lib/challah/concerns/user/passwordable.rb, line 14
def password_provider
  providers[:password] || Hash.new
end
password_provider?() click to toggle source
# File lib/challah/concerns/user/passwordable.rb, line 9
def password_provider?
  return true if @password_updated or @username_updated
  !!providers[:password]
end
username() click to toggle source
# File lib/challah/concerns/user/passwordable.rb, line 39
def username
  @username ||= password_provider? ? password_provider.fetch(:uid, '') : ''
end
username=(value) click to toggle source
# File lib/challah/concerns/user/passwordable.rb, line 43
def username=(value)
  @username_updated = true
  @username = value.to_s.strip.downcase
end