Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
f40e87a0
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f40e87a0
编写于
6月 24, 2014
作者:
M
Marin Jankovski
提交者:
Dmitriy Zaporozhets
6月 24, 2014
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Return better error when account exists when attempting oauth account create.
上级
2d9667df
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
16 addition
and
5 deletion
+16
-5
app/controllers/omniauth_callbacks_controller.rb
app/controllers/omniauth_callbacks_controller.rb
+9
-4
lib/gitlab/oauth/user.rb
lib/gitlab/oauth/user.rb
+7
-1
未找到文件。
app/controllers/omniauth_callbacks_controller.rb
浏览文件 @
f40e87a0
...
...
@@ -45,14 +45,19 @@ class OmniauthCallbacksController < Devise::OmniauthCallbacksController
# Create user if does not exist
# and allow_single_sign_on is true
if
Gitlab
.
config
.
omniauth
[
'allow_single_sign_on'
]
@user
||
=
Gitlab
::
OAuth
::
User
.
create
(
oauth
)
if
Gitlab
.
config
.
omniauth
[
'allow_single_sign_on'
]
&&
!
@user
@user
,
errors
=
Gitlab
::
OAuth
::
User
.
create
(
oauth
)
end
if
@user
if
@user
&&
!
errors
sign_in_and_redirect
(
@user
)
else
flash
[
:notice
]
=
"There's no such user!"
if
errors
error_message
=
errors
.
map
{
|
attribute
,
message
|
"
#{
attribute
}
#{
message
}
"
}.
join
(
", "
)
flash
[
:notice
]
=
"There was a problem creating your account.
#{
error_message
}
"
else
flash
[
:notice
]
=
"There's no such user!"
end
redirect_to
new_user_session_path
end
end
...
...
lib/gitlab/oauth/user.rb
浏览文件 @
f40e87a0
...
...
@@ -44,7 +44,13 @@ module Gitlab
user
.
username
=
email_username
.
gsub
(
"'"
,
""
)
end
user
.
save!
begin
user
.
save!
rescue
ActiveRecord
::
RecordInvalid
=>
e
log
.
info
"(OAuth) Email
#{
e
.
record
.
errors
[
:email
]
}
. Username
#{
e
.
record
.
errors
[
:username
]
}
"
return
nil
,
e
.
record
.
errors
end
log
.
info
"(OAuth) Creating user
#{
email
}
from login with extern_uid =>
#{
uid
}
"
if
Gitlab
.
config
.
omniauth
[
'block_auto_created_users'
]
&&
!
ldap?
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录