|
|
|
@@ -8,7 +8,7 @@ class Oauth::Ci4sController < Oauth::BaseController |
|
|
|
|
|
|
|
# 需要educoder那边设置回调地址 |
|
|
|
def create |
|
|
|
# begin |
|
|
|
begin |
|
|
|
code = params['code'].to_s.strip |
|
|
|
tip_exception("code不能为空") if code.blank? |
|
|
|
|
|
|
|
@@ -32,23 +32,22 @@ class Oauth::Ci4sController < Oauth::BaseController |
|
|
|
login = user_info['username'] |
|
|
|
email = user_info['email'] |
|
|
|
email = "#{login}@forge.com" if email.blank? |
|
|
|
reg_result = autologin_register(login,email, "Ec#{login}2021#", 'educoder', user_info['mobile']) |
|
|
|
reg_result = autologin_register(login, email, "Ec#{login}2021#", 'educoder', user_info['mobile']) |
|
|
|
Rails.logger.info("[OAuth2] reg_result -> #{reg_result}") |
|
|
|
if reg_result[:message].blank? |
|
|
|
open_user = OpenUsers::Ci4s.create!(user_id: reg_result[:user][:id], uid: login, extra: user_info) |
|
|
|
successful_authentication(open_user.user) |
|
|
|
else |
|
|
|
render_error(reg_result[:message]) |
|
|
|
tip_exception(reg_result[:message]) |
|
|
|
end |
|
|
|
else |
|
|
|
OpenUsers::Ci4s.create!(user: current_user, uid: user_info['username'], extra: user_info) |
|
|
|
end |
|
|
|
end |
|
|
|
Rails.logger.info("[OAuth2] session[:unionid] -> #{session[:unionid]}") |
|
|
|
|
|
|
|
redirect_to root_path(new_user: new_user) && return |
|
|
|
# rescue Exception => ex |
|
|
|
# render_error(ex.message) |
|
|
|
# end |
|
|
|
redirect_to root_path(new_user: new_user) |
|
|
|
rescue Exception => ex |
|
|
|
render_error(ex.message) |
|
|
|
end |
|
|
|
end |
|
|
|
end |