class OmniAuth::Strategies::XeroOauth2

Public Instance Methods

callback_url() click to toggle source
# File lib/omniauth/strategies/xero_oauth2.rb, line 18
def callback_url
  options[:redirect_uri] || (full_host + script_name + callback_path)
end

Private Instance Methods

id_token() click to toggle source
# File lib/omniauth/strategies/xero_oauth2.rb, line 42
def id_token
  @id_token ||= access_token['id_token']
end
raw_info() click to toggle source
# File lib/omniauth/strategies/xero_oauth2.rb, line 46
def raw_info
  if access_token['id_token'] == nil
    @raw_info = {
      'xero_userid'=> '',
      'given_name' => '',
      'family_name' => '',
      'email' => '',
    }
  else
    decoded_info ||= JWT.decode access_token['id_token'], nil, false
    @raw_info ||= decoded_info[0]
  end
end
xero_tenants() click to toggle source
# File lib/omniauth/strategies/xero_oauth2.rb, line 60
def xero_tenants
  @xero_tenants ||= JSON.parse(access_token.get("https://api.xero.com/connections", {'Authorization'=>('Bearer ' + access_token.token),'Accept'=>'application/json'}).body)
end