omniauth-qq-connect 0.1.0 → 0.2.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/README.md CHANGED
@@ -24,7 +24,26 @@ Or install it yourself as:
24
24
  provider :qq_connect, ENV['QQ_CONNECT_APP_KEY'], ENV['QQ_CONNECT_APP_SECRET']
25
25
  end
26
26
 
27
- *Notice* you only allow send the auth request from host(w/o port) list of application.
27
+ *Notice* you only allow send the auth request from host(w/o port) list of
28
+ application.
29
+
30
+ ## Configuring
31
+
32
+ You can configure several options(currently only one), which you pass in to
33
+ the provider method via a Hash:
34
+
35
+ scope: A comma-separated list of permissions you want to request from the
36
+ user. See the official docs for a full list of available permissions:
37
+ <http://wiki.opensns.qq.com/wiki/%E3%80%90QQ%E7%99%BB%E5%BD%95%E3%80%91API%E6%96%87%E6%A1%A3>
38
+ Default: `get_user_info`(获取用户在QQ空间的个人资料)
39
+
40
+ Example:
41
+
42
+ use OmniAuth::Builder do
43
+ provider :qq_connect,
44
+ ENV['QQ_CONNECT_API_KEY'], ENV['QQ_CONNECT_API_SECRET'],
45
+ scope: "get_user_info,add_share"
46
+ end
28
47
 
29
48
  ## Contributing
30
49
 
@@ -1,7 +1,7 @@
1
1
  module Omniauth
2
2
  module Qq
3
3
  module Connect
4
- VERSION = "0.1.0"
4
+ VERSION = "0.2.0"
5
5
  end
6
6
  end
7
7
  end
@@ -18,14 +18,10 @@ module OmniAuth
18
18
  :parse => :query
19
19
  }
20
20
 
21
- uid do
22
- raw_info
23
- end
24
-
25
- info { user_info }
21
+ option :authorize_options, [:scope]
26
22
 
27
- def raw_info
28
- @raw_info ||= begin
23
+ uid do
24
+ @uid ||= begin
29
25
  access_token.options[:mode] = :query
30
26
  access_token.options[:param_name] = :access_token
31
27
  # Response Example: "callback( {\"client_id\":\"11111\",\"openid\":\"000000FFFF\"} );\n"
@@ -36,8 +32,22 @@ module OmniAuth
36
32
  end
37
33
  end
38
34
 
39
- def user_info
40
- @user_info ||= begin
35
+ info do
36
+ {
37
+ :nickname => raw_info['nickname'],
38
+ :name => raw_info['nickname'], # Since it is required, fill it with nickname
39
+ :image => raw_info['figureurl_1'],
40
+ }
41
+ end
42
+
43
+ extra do
44
+ {
45
+ :raw_info => raw_info
46
+ }
47
+ end
48
+
49
+ def raw_info
50
+ @raw_info ||= begin
41
51
  #TODO handle error case
42
52
  #TODO make info request url configurable
43
53
  client.request(:get, "https://graph.qq.com/user/get_user_info", :params => {
@@ -52,4 +62,4 @@ module OmniAuth
52
62
  end
53
63
  end
54
64
 
55
- OmniAuth.config.add_camelization('qq_connect', 'QQConnect')
65
+ OmniAuth.config.add_camelization('qq_connect', 'QQConnect')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniauth-qq-connect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-06 00:00:00.000000000 Z
12
+ date: 2012-10-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: omniauth
16
- requirement: &70144482823240 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '1.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70144482823240
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: omniauth-oauth2
27
- requirement: &70144482822740 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
@@ -32,7 +37,12 @@ dependencies:
32
37
  version: '1.0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70144482822740
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '1.0'
36
46
  description: OmniAuth strategy for QQ Connect.
37
47
  email:
38
48
  - kaichenxyz@gmail.com
@@ -69,8 +79,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
79
  version: '0'
70
80
  requirements: []
71
81
  rubyforge_project:
72
- rubygems_version: 1.8.16
82
+ rubygems_version: 1.8.23
73
83
  signing_key:
74
84
  specification_version: 3
75
85
  summary: OmniAuth strategy for QQ Connect.
76
86
  test_files: []
87
+ has_rdoc: