class OmniAuth::Strategies::Etrade

Public Instance Methods

callback_phase() click to toggle source
Calls superclass method
# File lib/omniauth/strategies/etrade.rb, line 43
def callback_phase
  super
end
callback_url() click to toggle source
# File lib/omniauth/strategies/etrade.rb, line 17
def callback_url
  'oob'
end
request_phase() click to toggle source
# 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