BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
b88314f4
Commit
b88314f4
authored
Mar 07, 2017
by
http://jneen.net/
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
consolidate the error handling for #impersonate
parent
8f057a51
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
9 deletions
+12
-9
users_controller.rb
app/controllers/admin/users_controller.rb
+12
-9
No files found.
app/controllers/admin/users_controller.rb
View file @
b88314f4
...
@@ -29,15 +29,7 @@ class Admin::UsersController < Admin::ApplicationController
...
@@ -29,15 +29,7 @@ class Admin::UsersController < Admin::ApplicationController
end
end
def
impersonate
def
impersonate
if
user
.
blocked?
if
!
can?
(
user
,
:log_in
)
flash
[
:alert
]
=
"You cannot impersonate a blocked user"
redirect_to
admin_user_path
(
user
)
elsif
user
.
internal?
flash
[
:alert
]
=
"You cannot impersonate an internal user"
redirect_to
admin_user_path
(
user
)
else
session
[
:impersonator_id
]
=
current_user
.
id
session
[
:impersonator_id
]
=
current_user
.
id
warden
.
set_user
(
user
,
scope: :user
)
warden
.
set_user
(
user
,
scope: :user
)
...
@@ -47,6 +39,17 @@ class Admin::UsersController < Admin::ApplicationController
...
@@ -47,6 +39,17 @@ class Admin::UsersController < Admin::ApplicationController
flash
[
:alert
]
=
"You are now impersonating
#{
user
.
username
}
"
flash
[
:alert
]
=
"You are now impersonating
#{
user
.
username
}
"
redirect_to
root_path
redirect_to
root_path
else
flash
[
:alert
]
=
if
user
.
blocked?
"You cannot impersonate a blocked user"
elsif
user
.
internal?
"You cannot impersonate an internal user"
else
"You cannot impersonate a user who cannot log in"
end
redirect_to
admin_user_path
(
user
)
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