Class: OmniAuth::Strategies::Smartcloud

Inherits:
OAuth2
  • Object
show all
Defined in:
lib/omniauth/strategies/smartcloud.rb

Instance Method Summary collapse

Instance Method Details

#authorize_paramsObject



34
35
36
37
38
39
40
41
# File 'lib/omniauth/strategies/smartcloud.rb', line 34

def authorize_params
  params = options.authorize_params.merge(options.authorize_options.inject({}){|h,k| h[k.to_sym] = options[k] if options[k]; h})
  if OmniAuth.config.test_mode
    @env ||= {}
    @env['rack.session'] ||= {}
  end
  params
end

#build_access_tokenObject



43
44
45
46
# File 'lib/omniauth/strategies/smartcloud.rb', line 43

def build_access_token
  verifier = request.params['code']
  client.auth_code.get_token(verifier, {:callback_uri => callback_url}.merge(token_params.to_hash(:symbolize_keys => true)))
end

#local_callback_urlObject



22
23
24
25
26
27
28
# File 'lib/omniauth/strategies/smartcloud.rb', line 22

def local_callback_url
  uri = URI.parse(request.url.gsub(/\?.*$/,''))
  uri.path = ''
  uri.port = '' if uri.port == 80
  uri.to_s
  uri + callback_path
end

#raw_infoObject



62
63
64
# File 'lib/omniauth/strategies/smartcloud.rb', line 62

def raw_info
  @raw_info ||= access_token.get('/lotuslive-shindig-server/social/rest/people/@me/@self?mode=json').parsed['entry']
end

#request_phaseObject



30
31
32
# File 'lib/omniauth/strategies/smartcloud.rb', line 30

def request_phase
  redirect client.auth_code.authorize_url({:callback_uri => local_callback_url}.merge(authorize_params))
end