Module: Devise::Models::DatabaseAuthenticatableWithPersonEmail::ClassMethods

Defined in:
lib/devise/models/database_authenticatable_with_person_email.rb

Instance Method Summary collapse

Instance Method Details

#find_first_by_auth_conditions(tainted_conditions, opts = {}) ⇒ Object

Override of Devise::Models::Authenticatable.find_first_by_auth_conditions:



21
22
23
24
25
26
# File 'lib/devise/models/database_authenticatable_with_person_email.rb', line 21

def find_first_by_auth_conditions(tainted_conditions, opts={})
  filter = devise_parameter_filter.filter(tainted_conditions).merge opts
  person_filter = filter.extract! :email
  matching_person_scope = Person.where person_filter
  User.where(filter).joins(:person).merge(matching_person_scope).first
end