oa-openid 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/omniauth/strategies/open_id.rb +12 -7
- metadata +11 -11
@@ -25,6 +25,8 @@ module OmniAuth
|
|
25
25
|
:image => 'http://axschema.org/media/image/aspect11'
|
26
26
|
}
|
27
27
|
|
28
|
+
# Initialize the strategy as a Rack Middleware.
|
29
|
+
#
|
28
30
|
# @param app [Rack Application] Standard Rack middleware application argument.
|
29
31
|
# @param store [OpenID Store] The [OpenID Store](http://github.com/openid/ruby-openid/tree/master/lib/openid/store/)
|
30
32
|
# you wish to use. Defaults to OpenID::MemoryStore.
|
@@ -36,7 +38,7 @@ module OmniAuth
|
|
36
38
|
def initialize(app, store = nil, options = {})
|
37
39
|
super(app, options[:name] || :open_id)
|
38
40
|
@options = options
|
39
|
-
@options[:required] ||= [AX[:email], AX[:first_name], AX[:last_name], 'email', 'fullname']
|
41
|
+
@options[:required] ||= [AX[:email], AX[:name], AX[:first_name], AX[:last_name], 'email', 'fullname']
|
40
42
|
@options[:optional] ||= [AX[:nickname], AX[:city], AX[:state], AX[:website], AX[:image], 'postcode', 'nickname']
|
41
43
|
@store = store
|
42
44
|
end
|
@@ -48,7 +50,8 @@ module OmniAuth
|
|
48
50
|
:identifier => identifier,
|
49
51
|
:return_to => callback_url,
|
50
52
|
:required => @options[:required],
|
51
|
-
:optional => @options[:optional]
|
53
|
+
:optional => @options[:optional],
|
54
|
+
:method => 'post'
|
52
55
|
)}, []]}
|
53
56
|
end
|
54
57
|
|
@@ -122,11 +125,13 @@ module OmniAuth
|
|
122
125
|
ax = ::OpenID::AX::FetchResponse.from_success_response(response)
|
123
126
|
return {} unless ax
|
124
127
|
{
|
125
|
-
'email' => ax
|
126
|
-
'
|
127
|
-
'
|
128
|
-
'
|
129
|
-
'
|
128
|
+
'email' => ax.get_single(AX[:email]),
|
129
|
+
'first_name' => ax.get_single(AX[:first_name]),
|
130
|
+
'last_name' => ax.get_single(AX[:last_name]),
|
131
|
+
'name' => (ax.get_single(AX[:name]) || [ax.get_single(AX[:first_name]), ax.get_single(AX[:last_name])].join(' ')),
|
132
|
+
'location' => ("#{ax.get_single(AX[:city])}, #{ax.get_single(AX[:state])}" if Array(ax.get_single(AX[:city])).any? && Array(ax.get_single(AX[:state])).any?),
|
133
|
+
'nickname' => ax.get_single(AX[:nickname]),
|
134
|
+
'urls' => ({'Website' => Array(ax.get_single(AX[:website])).first} if Array(ax.get_single(AX[:website])).any?)
|
130
135
|
}.inject({}){|h,(k,v)| h[k] = Array(v).first; h}.reject{|k,v| v.nil? || v == ''}
|
131
136
|
end
|
132
137
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oa-openid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 23
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 6
|
10
|
+
version: 0.1.6
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Michael Bleigh
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-10-
|
18
|
+
date: 2010-10-25 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -24,12 +24,12 @@ dependencies:
|
|
24
24
|
requirements:
|
25
25
|
- - "="
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
hash:
|
27
|
+
hash: 23
|
28
28
|
segments:
|
29
29
|
- 0
|
30
30
|
- 1
|
31
|
-
-
|
32
|
-
version: 0.1.
|
31
|
+
- 6
|
32
|
+
version: 0.1.6
|
33
33
|
requirement: *id001
|
34
34
|
name: oa-core
|
35
35
|
prerelease: false
|
@@ -40,12 +40,12 @@ dependencies:
|
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
hash:
|
43
|
+
hash: 31
|
44
44
|
segments:
|
45
45
|
- 1
|
46
|
-
-
|
47
|
-
-
|
48
|
-
version: 1.
|
46
|
+
- 2
|
47
|
+
- 0
|
48
|
+
version: 1.2.0
|
49
49
|
requirement: *id002
|
50
50
|
name: rack-openid
|
51
51
|
prerelease: false
|