omniauth-campus 2.0 → 2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8dc60d7df8ef6f6ef8545d6f77a4ae7dd6236d79
4
- data.tar.gz: e7a941aab44da8085dfb8bc8cf7e8855b75b323f
3
+ metadata.gz: 20607bf77c647b4c95ba4ddd68f5c6688b13e911
4
+ data.tar.gz: 75dd6d7f1d2f1b2a6f98de14c54dc63dfea40373
5
5
  SHA512:
6
- metadata.gz: eb2903d75b3be39fb800e25f6d5a751f92e823c8a9399a941764793e34c646426184f54c03ca06221539089dd374436da14c6ac313122c53628dbfd577f928dd
7
- data.tar.gz: 0fee707b02c1475b9ff42512236844988487aefe5e7c314650c5a97ba539ee355da772f5b4badd36baa3b5467e4d9b2e0566fc89d30758e59c6050a7b9ca1c83
6
+ metadata.gz: 72c7844d90dd7c0d9a37a16850c2359f40fba504b29b60a882fc161209968ba9dc6ae480c108234be21e2d4ac7821c3861bed1f9d783664467c8fe1cef524d57
7
+ data.tar.gz: ff863e02c813ea16fc0d5e68c95eea1fcaaf5727ec61619a79dcf36b7b7337a2ab05d5b4aed970661590b36ef83aa85352bf42e2f99e5296209573a50c795590
@@ -2,6 +2,7 @@ require 'oauth'
2
2
  require 'omniauth'
3
3
  require 'multi_json'
4
4
  require 'openssl'
5
+ require 'omniauth/core'
5
6
  require 'uri'
6
7
  #require 'rack/utils'
7
8
 
@@ -30,79 +31,27 @@ module OmniAuth
30
31
  #:site => 'http://dev-oauth-test.gotpantheon.com/myawesomejson',
31
32
  #:proxy => ENV['http_proxy'] ? URI(ENV['http_proxy']) : nil}
32
33
 
33
- def consumer
34
- consumer = ::OAuth::Consumer.new(options.consumer_key, options.consumer_secret, options.client_options)
35
- consumer.http.open_timeout = options.open_timeout if options.open_timeout
36
- consumer.http.read_timeout = options.read_timeout if options.read_timeout
37
- consumer
38
- end
39
-
40
- def request_phase
41
- request_token = consumer.get_request_token({:oauth_callback => callback_url}, options.request_params)
42
- session['oauth'] ||= {}
43
- session['oauth'][name.to_s] = {'callback_confirmed' => request_token.callback_confirmed?, 'request_token' => request_token.token, 'request_secret' => request_token.secret}
44
-
45
- if request_token.callback_confirmed?
46
- redirect request_token.authorize_url(options[:authorize_params])
47
- else
48
- redirect request_token.authorize_url(options[:authorize_params].merge(:oauth_callback => callback_url))
34
+ def initialize(app, secret, auth_redirect, options = {})
35
+ @secret = secret
36
+ @auth_redirect = auth_redirect
37
+ super(app, :campus, options)
49
38
  end
50
39
 
51
- rescue ::Timeout::Error => e
52
- fail!(:timeout, e)
53
- rescue ::Net::HTTPFatalError, ::OpenSSL::SSL::SSLError => e
54
- fail!(:service_unavailable, e)
55
- end
56
-
57
- def callback_phase
58
- raise OmniAuth::NoSessionError.new("Session Expired") if session['oauth'].nil?
59
-
60
- request_token = ::OAuth::RequestToken.new(consumer, session['oauth'][name.to_s].delete('request_token'), session['oauth'][name.to_s].delete('request_secret'))
61
-
62
- opts = {}
63
- if session['oauth'][name.to_s]['callback_confirmed']
64
- opts[:oauth_verifier] = request['oauth_verifier']
65
- else
66
- opts[:oauth_callback] = callback_url
40
+ def request_phase
41
+ r = Rack::Response.new
42
+ r.redirect @auth_redirect
43
+ r.finish
67
44
  end
68
45
 
69
- @access_token = request_token.get_access_token(opts)
70
- super
71
- rescue ::Timeout::Error => e
72
- fail!(:timeout, e)
73
- rescue ::Net::HTTPFatalError, ::OpenSSL::SSL::SSLError => e
74
- fail!(:service_unavailable, e)
75
- rescue ::OAuth::Unauthorized => e
76
- fail!(:invalid_credentials, e)
77
- rescue ::MultiJson::DecodeError => e
78
- fail!(:invalid_response, e)
79
- rescue ::OmniAuth::NoSessionError => e
80
- fail!(:session_expired, e)
81
- end
82
-
83
- credentials do
84
- {'token' => access_token.token, 'secret' => access_token.secret}
85
- end
86
-
87
-
88
- uid{ request.params['uid'] }
89
-
90
- info do
91
- {
92
- :name => raw_info['name'],
93
- :email => raw_info['email']
94
- }
95
- end
96
46
 
97
- extra do
98
- {
99
- 'raw_info' => raw_info
100
- }
101
- end
47
+ def callback_phase
48
+ end
102
49
 
103
- def raw_info
104
- @raw_info ||= MultiJson.decode(access_token.get('/me.json')).body
105
- end
50
+ def auth_hash
51
+ OmniAuth::Utils.deep_merge(super(), {
52
+ 'uid' => @uid
53
+ })
54
+ end
106
55
 
107
56
 
108
57
  end
@@ -1,6 +1,6 @@
1
1
  module Omniauth
2
2
  module Campus
3
- VERSION = "2.0"
3
+ VERSION = "2.1"
4
4
  end
5
5
  end
6
6
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniauth-campus
3
3
  version: !ruby/object:Gem::Version
4
- version: '2.0'
4
+ version: '2.1'
5
5
  platform: ruby
6
6
  authors:
7
7
  - johnvehr