devise_masquerade 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of devise_masquerade might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/.travis.yml +1 -0
- data/README.md +8 -2
- data/app/controllers/devise/masquerades_controller.rb +16 -3
- data/lib/devise_masquerade/version.rb +1 -1
- data/spec/dummy/app/controllers/users/masquerades_controller.rb +15 -0
- data/spec/dummy/config/routes.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b127b79651ac3776ae412b8cd9f1af2b82302d33
|
4
|
+
data.tar.gz: ffadd1d279273798e0fe9a2406b95222bf865e59
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d5c61c113926df4d8682ac52cc98712926a2b1f111d1ae1969be803c25e35fd4d4dd0b2c31049125f5707c78646e56d0f86d2d502cbe07db9bc82e7947fab74
|
7
|
+
data.tar.gz: c4deaa44ad26a2a79e9a838b4883df333860d6061efc775710cdee46466535cfd57e3c1a2b4fc2e0e8a15564c15d53167baffaa7b7be55eee94dea922893dc65
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.3.3
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -38,7 +38,7 @@ In the model you'll need to add the parameter :masqueradable to the existing com
|
|
38
38
|
|
39
39
|
Add into your application_controller.rb:
|
40
40
|
|
41
|
-
|
41
|
+
before_action :masquerade_user!
|
42
42
|
|
43
43
|
Instead of user you can use your resource name admin, student or another names.
|
44
44
|
|
@@ -74,6 +74,12 @@ helpers:
|
|
74
74
|
"/custom_url"
|
75
75
|
end
|
76
76
|
end
|
77
|
+
|
78
|
+
#### Dont forget to update your Devise routes to point at your Custom Authorization Controller
|
79
|
+
in `routes.rb`:
|
80
|
+
|
81
|
+
devise_for :users, controllers: { masquerades: "admin/masquerades" }
|
82
|
+
|
77
83
|
|
78
84
|
## You can redefine few options:
|
79
85
|
|
@@ -94,7 +100,7 @@ And check http://localhost:3000/, use for login user1@example.com and
|
|
94
100
|
## Test project
|
95
101
|
|
96
102
|
cd spec/dummy
|
97
|
-
rake db:setup
|
103
|
+
RAILS_ENV=test rake db:setup
|
98
104
|
cd -
|
99
105
|
rspec
|
100
106
|
|
@@ -1,8 +1,21 @@
|
|
1
1
|
class Devise::MasqueradesController < DeviseController
|
2
|
-
|
2
|
+
if respond_to?(:prepend_before_action)
|
3
|
+
prepend_before_action :authenticate_scope!
|
4
|
+
else
|
5
|
+
prepend_before_filter :authenticate_scope!
|
6
|
+
end
|
7
|
+
|
8
|
+
if respond_to?(:before_action)
|
9
|
+
before_action :save_masquerade_owner_session, :only => :show
|
10
|
+
else
|
11
|
+
before_filter :save_masquerade_owner_session, :only => :show
|
12
|
+
end
|
3
13
|
|
4
|
-
|
5
|
-
|
14
|
+
if respond_to?(:after_action)
|
15
|
+
after_action :cleanup_masquerade_owner_session, :only => :back
|
16
|
+
else
|
17
|
+
after_filter :cleanup_masquerade_owner_session, :only => :back
|
18
|
+
end
|
6
19
|
|
7
20
|
def show
|
8
21
|
self.resource = resource_class.to_adapter.find_first(:id => params[:id])
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class Users::MasqueradesController < Devise::MasqueradesController
|
2
|
+
# Just an example showing how you would add authorization to devise_masquerade
|
3
|
+
def show
|
4
|
+
# do authorization stuff here
|
5
|
+
|
6
|
+
super
|
7
|
+
end
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
# Custom url redirect after masquerade
|
12
|
+
def after_masquerade_path_for(resource)
|
13
|
+
"/"
|
14
|
+
end
|
15
|
+
end
|
data/spec/dummy/config/routes.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_masquerade
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexandr Korsak
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -91,6 +91,7 @@ files:
|
|
91
91
|
- spec/dummy/app/controllers/admin/dashboard_controller.rb
|
92
92
|
- spec/dummy/app/controllers/application_controller.rb
|
93
93
|
- spec/dummy/app/controllers/dashboard_controller.rb
|
94
|
+
- spec/dummy/app/controllers/users/masquerades_controller.rb
|
94
95
|
- spec/dummy/app/helpers/application_helper.rb
|
95
96
|
- spec/dummy/app/models/admin.rb
|
96
97
|
- spec/dummy/app/models/admin/user.rb
|
@@ -147,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
148
|
version: '0'
|
148
149
|
requirements: []
|
149
150
|
rubyforge_project:
|
150
|
-
rubygems_version: 2.
|
151
|
+
rubygems_version: 2.5.2
|
151
152
|
signing_key:
|
152
153
|
specification_version: 4
|
153
154
|
summary: use for login as functionallity on your admin users pages
|
@@ -163,6 +164,7 @@ test_files:
|
|
163
164
|
- spec/dummy/app/controllers/admin/dashboard_controller.rb
|
164
165
|
- spec/dummy/app/controllers/application_controller.rb
|
165
166
|
- spec/dummy/app/controllers/dashboard_controller.rb
|
167
|
+
- spec/dummy/app/controllers/users/masquerades_controller.rb
|
166
168
|
- spec/dummy/app/helpers/application_helper.rb
|
167
169
|
- spec/dummy/app/models/admin.rb
|
168
170
|
- spec/dummy/app/models/admin/user.rb
|