devise_masquerade 0.6.0 → 0.6.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7697f7796ae221a16c23706efcc051b1209a9e4d
4
- data.tar.gz: 4c813e1baeda19e25d225bd1c35b56bae5689563
3
+ metadata.gz: 9a3bf4cda2161401cefd72da8332396859eec1ca
4
+ data.tar.gz: 159a457f4a68e3c6614af51760d85cd79330df9b
5
5
  SHA512:
6
- metadata.gz: b7b250e0c7fa601ddb5620b761dcf6609c4fa8b941ec7852ca0a2bab15ee4277d909f370177f9480d92b3bcd07e04bf9bc3f8b042223c33c2220d47ea4a8751d
7
- data.tar.gz: 11b1f301ff06051b7219b5ff446dedd54cf9f05b3e2cd2e8ee4697678e6ca6d5e4c5d13e224d7551e32001b3920ae7cc54b0483f4bfee240a42942bdd88deab3
6
+ metadata.gz: cfa6702b8501684ce1dbffbf32a151bc57ef0661289e1705664dbcdd53a6b8ce41c1c6be11ae48255913607a8b11209ed0577050513a2f3b4acb38dd2a553719
7
+ data.tar.gz: 709c35dcf2a70ac8adf8022d7d5878990c9aabd0f862819ad50a6bac4d903358334b841ab157644aa62790af78a9a1c61e8c396b79b261aeedda821e7b69dbd5
@@ -28,15 +28,7 @@ class Devise::MasqueradesController < DeviseController
28
28
  self.resource.masquerade!
29
29
  request.env["devise.skip_trackable"] = "1"
30
30
 
31
- if Devise.masquerade_bypass_warden_callback
32
- if respond_to?(:bypass_sign_in)
33
- bypass_sign_in(self.resource)
34
- else
35
- sign_in(self.resource, :bypass => true)
36
- end
37
- else
38
- sign_in(self.resource)
39
- end
31
+ masquerade_sign_in(self.resource)
40
32
 
41
33
  if Devise.masquerade_routes_back && Rails::VERSION::MAJOR == 5
42
34
  redirect_back(fallback_location: "#{after_masquerade_param_for(self.resource)}?#{after_masquerade_param_for(resource)}")
@@ -60,15 +52,7 @@ class Devise::MasqueradesController < DeviseController
60
52
  sign_out(send("current_#{masqueraded_resource_name}"))
61
53
  end
62
54
 
63
- if Devise.masquerade_bypass_warden_callback
64
- if respond_to?(:bypass_sign_in)
65
- bypass_sign_in(owner_user)
66
- else
67
- sign_in(owner_user, :bypass => true)
68
- end
69
- else
70
- sign_in(owner_user)
71
- end
55
+ masquerade_sign_in(owner_user)
72
56
  request.env["devise.skip_trackable"] = nil
73
57
 
74
58
  if Devise.masquerade_routes_back && Rails::VERSION::MAJOR == 5
@@ -12,15 +12,7 @@ module DeviseMasquerade
12
12
  #{name} = ::#{class_name}.find_by_masquerade_key(params["#{Devise.masquerade_param}"])
13
13
 
14
14
  if #{name}
15
- if Devise.masquerade_bypass_warden_callback
16
- if respond_to?(:bypass_sign_in)
17
- bypass_sign_in(#{name})
18
- else
19
- sign_in(#{name}, :bypass => true)
20
- end
21
- else
22
- sign_in(#{name})
23
- end
15
+ masquerade_sign_in(#{name})
24
16
  end
25
17
  end
26
18
 
@@ -32,6 +24,20 @@ module DeviseMasquerade
32
24
  return nil unless send(:#{name}_masquerade?)
33
25
  ::#{class_name}.to_adapter.find_first(:id => session[:"devise_masquerade_#{name}"])
34
26
  end
27
+
28
+ private
29
+
30
+ def masquerade_sign_in(resource)
31
+ if Devise.masquerade_bypass_warden_callback
32
+ if respond_to?(:bypass_sign_in)
33
+ bypass_sign_in(resource)
34
+ else
35
+ sign_in(resource, :bypass => true)
36
+ end
37
+ else
38
+ sign_in(resource)
39
+ end
40
+ end
35
41
  METHODS
36
42
 
37
43
  ActiveSupport.on_load(:action_controller) do
@@ -13,7 +13,8 @@ module Devise
13
13
  module InstanceMethods
14
14
  def masquerade!
15
15
  @masquerade_key = SecureRandom.urlsafe_base64(Devise.masquerade_key_size)
16
- Rails.cache.write("#{self.class.name.pluralize.underscore}:#{@masquerade_key}:masquerade", id, :expires_in => Devise.masquerade_expires_in)
16
+ cache_key = self.class.cache_masquerade_key_by(@masquerade_key)
17
+ Rails.cache.write(cache_key, id, :expires_in => Devise.masquerade_expires_in)
17
18
  end
18
19
  end
19
20
 
@@ -1,3 +1,3 @@
1
1
  module DeviseMasquerade
2
- VERSION = "0.6.0"
2
+ VERSION = "0.6.1"
3
3
  end
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.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexandr Korsak
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-18 00:00:00.000000000 Z
11
+ date: 2017-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler