|
|
|
@@ -7,7 +7,6 @@ class Oauth::MulanossController < Oauth::BaseController |
|
|
|
begin |
|
|
|
code = params['code'].to_s.strip |
|
|
|
tip_exception("code不能为空") if code.blank? |
|
|
|
new_user = false |
|
|
|
result = MulanossOauth::Service.access_token(code) |
|
|
|
result = MulanossOauth::Service.user_info(result[:access_token]) |
|
|
|
|
|
|
|
@@ -17,9 +16,10 @@ class Oauth::MulanossController < Oauth::BaseController |
|
|
|
successful_authentication(open_user.user) |
|
|
|
else |
|
|
|
if current_user.blank? || !current_user.logged? |
|
|
|
new_user = true |
|
|
|
login = User.generate_login('ML') |
|
|
|
reg_result = autologin_register(login, "#{login}@forge.com" , "M#{login}2021#", 'mulan', true) |
|
|
|
email_regexp = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$" |
|
|
|
mail = result["email"].to_s.match(email_regexp).present? ? result["email"].to_s : "#{login}@forge.com" |
|
|
|
reg_result = autologin_register(login, mail , "M#{login}2021#", 'mulan', true) |
|
|
|
open_user = OpenUsers::Mulan.create!(user_id: reg_result[:user][:id], uid: result['id'], extra: result) |
|
|
|
successful_authentication(open_user.user) |
|
|
|
else |
|
|
|
|