FIX educoder platform register bug when mail exists
This commit is contained in:
parent
701b56ea90
commit
6d0eb74683
|
@ -8,7 +8,7 @@ class Oauth::EducoderController < Oauth::BaseController
|
||||||
|
|
||||||
::OauthEducoderForm.new({login: login, token: token, callback_url: callback_url}).validate!
|
::OauthEducoderForm.new({login: login, token: token, callback_url: callback_url}).validate!
|
||||||
|
|
||||||
open_user= OpenUsers::Educoder.find_by(uid: login)
|
open_user= OpenUsers::Educoder.find_by(uid: login) || OpenUsers::Educoder.find_by(uid: mail)
|
||||||
|
|
||||||
if open_user.present? && open_user.user.present? && open_user.user.email_binded?
|
if open_user.present? && open_user.user.present? && open_user.user.email_binded?
|
||||||
Rails.logger.info "######## open_user exist and open_user.user exsit and email is binded ok"
|
Rails.logger.info "######## open_user exist and open_user.user exsit and email is binded ok"
|
||||||
|
@ -17,10 +17,20 @@ class Oauth::EducoderController < Oauth::BaseController
|
||||||
redirect_to callback_url
|
redirect_to callback_url
|
||||||
else
|
else
|
||||||
Rails.logger.info "######## open user not exits"
|
Rails.logger.info "######## open user not exits"
|
||||||
user = User.find_by('login = ? or mail = ?', login, mail)
|
user, uid = nil
|
||||||
|
login_user = User.find_by(login: login)
|
||||||
|
|
||||||
|
if login_user
|
||||||
|
uid = login
|
||||||
|
user = login_user
|
||||||
|
else
|
||||||
|
mail_user = User.find_by(mail: mail)
|
||||||
|
uid = mail
|
||||||
|
user = mail_user
|
||||||
|
end
|
||||||
|
|
||||||
if user.is_a?(User)
|
if user.is_a?(User)
|
||||||
OpenUsers::Educoder.create!(user: user, uid: login)
|
OpenUsers::Educoder.create!(user: user, uid: uid)
|
||||||
successful_authentication(user)
|
successful_authentication(user)
|
||||||
|
|
||||||
redirect_to callback_url
|
redirect_to callback_url
|
||||||
|
|
Loading…
Reference in New Issue