mirror of
https://github.com/discourse/discourse.git
synced 2025-06-04 04:14:38 +08:00
BUGFIX: allow facebook auth for people refusing email
This commit is contained in:
@ -13,14 +13,14 @@ class Auth::FacebookAuthenticator < Auth::Authenticator
|
|||||||
|
|
||||||
result.email = email = session_info[:email]
|
result.email = email = session_info[:email]
|
||||||
result.email_valid = true
|
result.email_valid = true
|
||||||
result.name = name = facebook_hash[:name]
|
result.name = facebook_hash[:name]
|
||||||
|
|
||||||
result.extra_data = facebook_hash
|
result.extra_data = facebook_hash
|
||||||
|
|
||||||
user_info = FacebookUserInfo.where(facebook_user_id: facebook_hash[:facebook_user_id]).first
|
user_info = FacebookUserInfo.where(facebook_user_id: facebook_hash[:facebook_user_id]).first
|
||||||
result.user = user_info.try(:user)
|
result.user = user_info.try(:user)
|
||||||
|
|
||||||
if !result.user && result.user = User.where(email: Email.downcase(email)).first
|
if !result.user && !email.blank? && result.user = User.where(email: Email.downcase(email)).first
|
||||||
FacebookUserInfo.create({user_id: result.user.id}.merge(facebook_hash))
|
FacebookUserInfo.create({user_id: result.user.id}.merge(facebook_hash))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user