21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
# File 'lib/omniauth/strategies/etrade.rb', line 21
def request_phase
begin
request_token = consumer.get_request_token({:oauth_callback => callback_url}, options.request_params)
session['oauth'] ||= {}
session['oauth'][name.to_s] = {'callback_confirmed' => request_token.callback_confirmed?,
'request_token' => request_token.token, 'request_secret' => request_token.secret}
Rails.logger.debug { "#{request_token.to_yaml}" }
if request_token.callback_confirmed?
redirect request_token.authorize_url({key: options.consumer_key}.merge(options[:authorize_params])).sub! 'oauth_token', 'token'
else
redirect request_token.authorize_url(
options[:authorize_params].merge(oauth_callback: callback_url, key: options.consumer_key)).sub! 'oauth_token', 'token'
end
rescue ::Timeout::Error => e
fail!(:timeout, e)
rescue ::Net::HTTPFatalError, ::OpenSSL::SSL::SSLError => e
fail!(:service_unavailable, e)
end
end
|