class OmniAuth::Strategies::FortnoxOauth2

Fortnox

Constants

DEFAULT_SCOPE

Public Instance Methods

build_access_token() click to toggle source
# File lib/omniauth/strategies/fortnox_oauth2.rb, line 69
def build_access_token
  verifier = request.params['code']
  client.auth_code.get_token(
    verifier,
    { redirect_uri: callback_url }.merge(token_params.to_hash(symbolize_keys: true)),
    deep_symbolize(options.auth_token_params)
  )
end
callback_url() click to toggle source
# File lib/omniauth/strategies/fortnox_oauth2.rb, line 65
def callback_url
  options[:callback_url] || (full_host + script_name + callback_path)
end
raw_info() click to toggle source
# File lib/omniauth/strategies/fortnox_oauth2.rb, line 48
def raw_info
  return if access_token.blank?

  api_client = OmniAuth::FortnoxOAuth2::API.new(access_token&.token)
  @raw_info ||= api_client.get('/companyinformation')
end
request_phase() click to toggle source
Calls superclass method
# File lib/omniauth/strategies/fortnox_oauth2.rb, line 55
def request_phase
  options[:authorize_params] = {
    client_id: options['client_id'],
    response_type: 'code',
    scope: (options['scope'] || DEFAULT_SCOPE)
  }

  super
end

Private Instance Methods

prune!(hash) click to toggle source
# File lib/omniauth/strategies/fortnox_oauth2.rb, line 80
def prune!(hash)
  hash.delete_if do |_, value|
    prune!(value) if value.is_a?(Hash)
    value.nil? || (value.respond_to?(:empty?) && value.empty?)
  end
end