rails_warden 0.3.0 → 0.5.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.
- data/CHANGELOG +3 -0
- data/VERSION +1 -1
- data/lib/rails_warden.rb +56 -6
- data/rails_warden.gemspec +4 -3
- metadata +13 -5
data/CHANGELOG
ADDED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.5.0
|
data/lib/rails_warden.rb
CHANGED
@@ -11,13 +11,47 @@ module Warden::Mixins::Common
|
|
11
11
|
# Gets the rails request object by default if it's available
|
12
12
|
def request
|
13
13
|
return @request if @request
|
14
|
-
if
|
14
|
+
if defined?(ActionDispatch::Request)
|
15
|
+
@request = ActionDispatch::Request.new(env)
|
16
|
+
elsif env['action_controller.rescue.request']
|
15
17
|
@request = env['action_controller.rescue.request']
|
16
18
|
else
|
17
19
|
Rack::Request.new(env)
|
18
20
|
end
|
19
21
|
end
|
20
22
|
|
23
|
+
def response
|
24
|
+
return @response if @response
|
25
|
+
if env['action_controller.rescue.response']
|
26
|
+
@response = env['action_controller.rescue.response']
|
27
|
+
else
|
28
|
+
Rack::Response.new(env)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def cookies
|
33
|
+
unless defined?('ActionController::Cookies')
|
34
|
+
puts 'cookies was not defined'
|
35
|
+
return
|
36
|
+
end
|
37
|
+
@cookies ||= begin
|
38
|
+
# Duck typing...
|
39
|
+
controller = Struct.new(:request, :response) do
|
40
|
+
def self.helper_method(*args); end
|
41
|
+
end
|
42
|
+
controller.send(:include, ActionController::Cookies)
|
43
|
+
controller.new(self.request, self.response).send(:cookies)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def logger
|
48
|
+
unless defined?('Rails')
|
49
|
+
puts 'logger not defined'
|
50
|
+
return
|
51
|
+
end
|
52
|
+
Rails.logger
|
53
|
+
end
|
54
|
+
|
21
55
|
def raw_session
|
22
56
|
request.session
|
23
57
|
end
|
@@ -29,18 +63,21 @@ module Warden::Mixins::Common
|
|
29
63
|
end
|
30
64
|
|
31
65
|
Warden::Manager.before_failure do |env, opts|
|
32
|
-
|
66
|
+
action = RailsWarden.unauthenticated_action || "unauthenticated"
|
67
|
+
if Rails.respond_to?(:version) && Rails.version >= "3"
|
68
|
+
env['action_dispatch.request.path_parameters'][:action] = action
|
69
|
+
else
|
70
|
+
env['warden'].request.params['action'] = action
|
71
|
+
end
|
33
72
|
end
|
34
73
|
|
35
74
|
# Rails needs the action to be passed in with the params
|
36
75
|
Warden::Manager.before_failure do |env, opts|
|
37
|
-
|
38
|
-
request.params["action"] = RailsWarden.unauthenticated_action
|
39
|
-
end
|
76
|
+
env['warden'].request.params["action"] = RailsWarden.unauthenticated_action
|
40
77
|
end
|
41
78
|
|
42
79
|
|
43
|
-
if defined?(Rails)
|
80
|
+
if !defined?(Rails::Railtie)
|
44
81
|
Rails.configuration.after_initialize do
|
45
82
|
class ActionController::Base
|
46
83
|
include RailsWarden::Mixins::HelperMethods
|
@@ -51,6 +88,19 @@ if defined?(Rails)
|
|
51
88
|
include RailsWarden::Mixins::HelperMethods
|
52
89
|
end
|
53
90
|
end
|
91
|
+
else
|
92
|
+
class RailsWarden::Railtie < Rails::Railtie
|
93
|
+
initializer :warden do
|
94
|
+
ActionController::Base.class_eval do
|
95
|
+
include RailsWarden::Mixins::HelperMethods
|
96
|
+
include RailsWarden::Mixins::ControllerOnlyMethods
|
97
|
+
end
|
98
|
+
|
99
|
+
module ApplicationHelper
|
100
|
+
include RailsWarden::Mixins::HelperMethods
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
54
104
|
end
|
55
105
|
|
56
106
|
class Warden::SessionSerializer
|
data/rails_warden.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rails_warden}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.5.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Daniel Neighman"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-03-08}
|
13
13
|
s.description = %q{A gem that provides authenitcation via the Warden framework}
|
14
14
|
s.email = %q{has.sox@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -19,6 +19,7 @@ Gem::Specification.new do |s|
|
|
19
19
|
]
|
20
20
|
s.files = [
|
21
21
|
".gitignore",
|
22
|
+
"CHANGELOG",
|
22
23
|
"LICENSE",
|
23
24
|
"README.textile",
|
24
25
|
"Rakefile",
|
@@ -39,7 +40,7 @@ Gem::Specification.new do |s|
|
|
39
40
|
s.rdoc_options = ["--charset=UTF-8"]
|
40
41
|
s.require_paths = ["lib"]
|
41
42
|
s.rubyforge_project = %q{warden}
|
42
|
-
s.rubygems_version = %q{1.3.
|
43
|
+
s.rubygems_version = %q{1.3.6}
|
43
44
|
s.summary = %q{A gem that provides authenitcation via the Warden framework}
|
44
45
|
s.test_files = [
|
45
46
|
"spec/controller_mixin_spec.rb",
|
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_warden
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 5
|
8
|
+
- 0
|
9
|
+
version: 0.5.0
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- Daniel Neighman
|
@@ -9,7 +14,7 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date: 2010-
|
17
|
+
date: 2010-03-08 00:00:00 +13:00
|
13
18
|
default_executable:
|
14
19
|
dependencies: []
|
15
20
|
|
@@ -25,6 +30,7 @@ extra_rdoc_files:
|
|
25
30
|
- TODO
|
26
31
|
files:
|
27
32
|
- .gitignore
|
33
|
+
- CHANGELOG
|
28
34
|
- LICENSE
|
29
35
|
- README.textile
|
30
36
|
- Rakefile
|
@@ -53,18 +59,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
53
59
|
requirements:
|
54
60
|
- - ">="
|
55
61
|
- !ruby/object:Gem::Version
|
62
|
+
segments:
|
63
|
+
- 0
|
56
64
|
version: "0"
|
57
|
-
version:
|
58
65
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
66
|
requirements:
|
60
67
|
- - ">="
|
61
68
|
- !ruby/object:Gem::Version
|
69
|
+
segments:
|
70
|
+
- 0
|
62
71
|
version: "0"
|
63
|
-
version:
|
64
72
|
requirements: []
|
65
73
|
|
66
74
|
rubyforge_project: warden
|
67
|
-
rubygems_version: 1.3.
|
75
|
+
rubygems_version: 1.3.6
|
68
76
|
signing_key:
|
69
77
|
specification_version: 3
|
70
78
|
summary: A gem that provides authenitcation via the Warden framework
|