class OmniAuth::Strategies::Intercom

Public Instance Methods

raw_info() click to toggle source
# File lib/omniauth/strategies/intercom.rb, line 36
def raw_info
  accept_headers
  access_token.options[:mode] = :body
  @raw_info ||= begin
    parsed = access_token.get('/me').parsed
    if options.verify_email && parsed['email_verified'] != true
      return {}
    end
   parsed
  end
end
request_phase() click to toggle source
Calls superclass method
# File lib/omniauth/strategies/intercom.rb, line 48
def request_phase
  prepopulate_signup_fields_form if request.params.fetch('signup', false)
  super
end

Protected Instance Methods

accept_headers() click to toggle source
# File lib/omniauth/strategies/intercom.rb, line 55
def accept_headers
  access_token.client.connection.headers['Authorization'] = access_token.client.connection.basic_auth(access_token.token, '')
  access_token.client.connection.headers['Accept'] = "application/vnd.intercom.3+json"
  access_token.client.connection.headers['User-Agent'] = "omniauth-intercom/#{::OmniAuth::Intercom::VERSION}"
end
prepopulate_signup_fields_form() click to toggle source
# File lib/omniauth/strategies/intercom.rb, line 61
def prepopulate_signup_fields_form
  options.client_options[:authorize_url] += '/signup'
  signup_hash = signup_fields_hash
  options.client_options[:authorize_url] += '?' + signup_hash.map{|k,v| [CGI.escape(k.to_s), "=", CGI.escape(v.to_s)]}.map(&:join).join("&") unless signup_hash.empty?
end
signup_fields_hash() click to toggle source
# File lib/omniauth/strategies/intercom.rb, line 67
def signup_fields_hash
  hash = {}
  ['name', 'email', 'app_name'].each do |field_name|
    hash[field_name] = request.params.fetch(field_name) if request.params.fetch(field_name, false)
  end
  return hash
end