Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
aa54bb7e
Commit
aa54bb7e
authored
Apr 26, 2017
by
Rémy Coutable
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix logic in Users::CreateService broken by the fix for OAuth users
Signed-off-by:
Rémy Coutable
<
remy@rymai.me
>
parent
fa01c373
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
8 deletions
+15
-8
app/services/users/build_service.rb
app/services/users/build_service.rb
+15
-8
No files found.
app/services/users/build_service.rb
View file @
aa54bb7e
...
@@ -9,14 +9,13 @@ module Users
...
@@ -9,14 +9,13 @@ module Users
def
execute
(
skip_authorization:
false
)
def
execute
(
skip_authorization:
false
)
raise
Gitlab
::
Access
::
AccessDeniedError
unless
skip_authorization
||
can_create_user?
raise
Gitlab
::
Access
::
AccessDeniedError
unless
skip_authorization
||
can_create_user?
user
=
User
.
new
(
build_user_params
(
skip_authorization:
skip_authorization
))
user_params
=
build_user_params
(
skip_authorization:
skip_authorization
)
user
=
User
.
new
(
user_params
)
if
current_user
&
.
admin?
if
current_user
&
.
admin?
if
params
[
:reset_password
]
@reset_token
=
user
.
generate_reset_token
if
params
[
:reset_password
]
user
.
generate_reset_token
end
if
params
[
:force_random_password
]
if
user_
params
[
:force_random_password
]
random_password
=
Devise
.
friendly_token
.
first
(
Devise
.
password_length
.
min
)
random_password
=
Devise
.
friendly_token
.
first
(
Devise
.
password_length
.
min
)
user
.
password
=
user
.
password_confirmation
=
random_password
user
.
password
=
user
.
password_confirmation
=
random_password
end
end
...
@@ -89,12 +88,20 @@ module Users
...
@@ -89,12 +88,20 @@ module Users
user_params
.
merge!
(
force_random_password:
true
,
password_expires_at:
nil
)
user_params
.
merge!
(
force_random_password:
true
,
password_expires_at:
nil
)
end
end
else
else
user_params
=
params
.
slice
(
*
signup_params
)
allowed_signup_params
=
signup_params
user_params
[
:skip_confirmation
]
=
params
[
:skip_confirmation
]
if
skip_authorization
allowed_signup_params
<<
:skip_confirmation
if
skip_authorization
user_params
[
:skip_confirmation
]
||=
!
current_application_settings
.
send_user_confirmation_email
user_params
=
params
.
slice
(
*
allowed_signup_params
)
if
user_params
[
:skip_confirmation
].
nil?
user_params
[
:skip_confirmation
]
=
skip_user_confirmation_email_from_setting
end
end
end
user_params
user_params
end
end
def
skip_user_confirmation_email_from_setting
!
current_application_settings
.
send_user_confirmation_email
end
end
end
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment