devise_masquerade 0.6.1 → 0.6.2

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: 9a3bf4cda2161401cefd72da8332396859eec1ca
4
- data.tar.gz: 159a457f4a68e3c6614af51760d85cd79330df9b
3
+ metadata.gz: dccb830fc6fa8a047266f59757494fdbb83b4d90
4
+ data.tar.gz: 24994d16e78dce06af32f6c5979b713c22f290cc
5
5
  SHA512:
6
- metadata.gz: cfa6702b8501684ce1dbffbf32a151bc57ef0661289e1705664dbcdd53a6b8ce41c1c6be11ae48255913607a8b11209ed0577050513a2f3b4acb38dd2a553719
7
- data.tar.gz: 709c35dcf2a70ac8adf8022d7d5878990c9aabd0f862819ad50a6bac4d903358334b841ab157644aa62790af78a9a1c61e8c396b79b261aeedda821e7b69dbd5
6
+ metadata.gz: bbd727043d94898faf45e52be2b79a35160320a4255379b07c373473ff366508e7ac776a09aa66491635a71a871680f3b131270bfd4bea918fb56b8064caaedf
7
+ data.tar.gz: 5a26889496efec6ece05043d152b5d3a5828a19a3d196b6f7299e396b425f116686f1d7828d2abafd6708475fc1396f340b37d3c9fc0d1b654b00986254c1bbd
@@ -31,11 +31,11 @@ class Devise::MasqueradesController < DeviseController
31
31
  masquerade_sign_in(self.resource)
32
32
 
33
33
  if Devise.masquerade_routes_back && Rails::VERSION::MAJOR == 5
34
- redirect_back(fallback_location: "#{after_masquerade_param_for(self.resource)}?#{after_masquerade_param_for(resource)}")
34
+ redirect_back(fallback_location: after_masquerade_full_path_for(resource))
35
35
  elsif Devise.masquerade_routes_back && request.env['HTTP_REFERER'].present?
36
36
  redirect_to :back
37
37
  else
38
- redirect_to("#{after_masquerade_path_for(self.resource)}?#{after_masquerade_param_for(resource)}")
38
+ redirect_to(after_masquerade_full_path_for(resource))
39
39
  end
40
40
  end
41
41
 
@@ -105,6 +105,14 @@ class Devise::MasqueradesController < DeviseController
105
105
  "/"
106
106
  end
107
107
 
108
+ def after_masquerade_full_path_for(resource)
109
+ if after_masquerade_path_for(resource) =~ /\?/
110
+ "#{after_masquerade_path_for(resource)}&#{after_masquerade_param_for(resource)}"
111
+ else
112
+ "#{after_masquerade_path_for(resource)}?#{after_masquerade_param_for(resource)}"
113
+ end
114
+ end
115
+
108
116
  def after_masquerade_param_for(resource)
109
117
  "#{Devise.masquerade_param}=#{resource.masquerade_key}"
110
118
  end
@@ -1,21 +1,22 @@
1
1
  # -*- encoding: utf-8 -*-
2
+
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'devise_masquerade/version'
5
6
 
6
7
  Gem::Specification.new do |gem|
7
- gem.name = "devise_masquerade"
8
+ gem.name = 'devise_masquerade'
8
9
  gem.version = DeviseMasquerade::VERSION
9
- gem.authors = ["Alexandr Korsak"]
10
- gem.email = ["alex.korsak@gmail.com"]
11
- gem.description = %q{devise masquerade library}
12
- gem.summary = %q{use for login as functionallity on your admin users pages}
13
- gem.homepage = "http://github.com/oivoodoo/devise_masquerade/"
10
+ gem.authors = ['Alexandr Korsak']
11
+ gem.email = ['alex.korsak@gmail.com']
12
+ gem.description = 'devise masquerade library'
13
+ gem.summary = 'use for login as functionallity on your admin users pages'
14
+ gem.homepage = 'http://github.com/oivoodoo/devise_masquerade/'
14
15
 
15
16
  gem.files = `git ls-files`.split($/)
16
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
17
+ gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
17
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = ["lib"]
19
+ gem.require_paths = ['lib']
19
20
 
20
21
  gem.license = 'MIT'
21
22
 
@@ -24,4 +25,3 @@ Gem::Specification.new do |gem|
24
25
  gem.add_runtime_dependency('railties', '>= 3.0')
25
26
  gem.add_runtime_dependency('devise', '>= 2.1.0')
26
27
  end
27
-
@@ -1,3 +1,3 @@
1
1
  module DeviseMasquerade
2
- VERSION = "0.6.1"
2
+ VERSION = '0.6.2'.freeze
3
3
  end
@@ -44,9 +44,13 @@ describe Devise::MasqueradesController, type: :controller do
44
44
  end # context
45
45
 
46
46
  context '< Rails 5, fallback if http_referer not present' do
47
+ before do
48
+ allow_any_instance_of(described_class).to receive(:after_masquerade_path_for).and_return("/dashboard?color=red")
49
+ end
50
+
47
51
  before { get :show, id: mask.to_param }
48
52
 
49
- it { should redirect_to("/?masquerade=secure_key") }
53
+ it { should redirect_to("/dashboard?color=red&masquerade=secure_key") }
50
54
  end # context
51
55
  end # context
52
56
 
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.1
4
+ version: 0.6.2
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-09-27 00:00:00.000000000 Z
11
+ date: 2018-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler