devise_masquerade 0.6.1 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.

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