def ldap
# We only find ourselves here if the authentication to LDAP was successful.
- omniauth = request.env["omniauth.auth"]["extra"]["raw_info"]
- @user = User.find_for_ldap_auth(omniauth)
+ info = request.env["omniauth.auth"]["info"]
+ @user = User.find_for_ldap_auth(info)
if @user.persisted?
@user.remember_me = true
end
(0...8).map{ ('a'..'z').to_a[rand(26)] }.join
end
- def self.find_for_ldap_auth(omniauth)
- username = omniauth.sAMAccountName[0]
- email = omniauth.userprincipalname[0]
+ def self.find_for_ldap_auth(omniauth_info)
+ name = omniauth_info.name
+ email = omniauth_info.email
if @user = User.find_by_email(email)
@user
else
password = generate_random_password
- @user = User.create(:name => username,
+ @user = User.create(:name => name,
:email => email,
:password => password,
:password_confirmation => password