FEATURE: If the email is verified, we can use that to find accounts
This commit is contained in:
parent
fcc4b415a4
commit
2b9869ef2e
|
@ -69,12 +69,15 @@ class OAuth2BasicAuthenticator < ::Auth::OAuth2Authenticator
|
||||||
result.name = user_details[:name]
|
result.name = user_details[:name]
|
||||||
result.username = user_details[:username]
|
result.username = user_details[:username]
|
||||||
result.email = user_details[:email]
|
result.email = user_details[:email]
|
||||||
result.email_valid = result.email.present? && SiteSetting.oauth2_email_verified
|
result.email_valid = result.email.present? && SiteSetting.oauth2_email_verified?
|
||||||
|
|
||||||
current_info = ::PluginStore.get("oauth2_basic", "oauth2_basic_user_#{user_details[:user_id]}")
|
current_info = ::PluginStore.get("oauth2_basic", "oauth2_basic_user_#{user_details[:user_id]}")
|
||||||
if current_info
|
if current_info
|
||||||
result.user = User.where(id: current_info[:user_id]).first
|
result.user = User.where(id: current_info[:user_id]).first
|
||||||
|
elsif SiteSetting.oauth2_email_verified?
|
||||||
|
result.user = User.where(email: result.email).first
|
||||||
end
|
end
|
||||||
|
|
||||||
result.extra_data = { oauth2_basic_user_id: user_details[:user_id] }
|
result.extra_data = { oauth2_basic_user_id: user_details[:user_id] }
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue