module OmniAuth::Whichsignupapi::ApiMethods
Public Class Methods
handles(url, secret, token_secret, login_id)
click to toggle source
# File lib/omniauth/whichsignupapi/api_methods.rb, line 4 def self.handles(url, secret, token_secret, login_id) make_call(url, '/api/login/handles', secret, token_secret, login: login_id) end
login(url, secret, token_secret, login_id, password, always_get_details = false)
click to toggle source
# File lib/omniauth/whichsignupapi/api_methods.rb, line 10 def self.login(url, secret, token_secret, login_id, password, always_get_details = false) make_call(url,'/api/login', secret, token_secret, login: login_id, password: password, requested: 'screen_name,user_name,customer_id,b2b_customer,marketing_permission', reply: always_get_details ? 'detailed' : 'standard ') end
Private Class Methods
expand_and_clean_results(token_secret, results)
click to toggle source
# File lib/omniauth/whichsignupapi/api_methods.rb, line 42 def self.expand_and_clean_results(token_secret, results) if results['token'] token = TokenTools.new(token_secret).decode_token(results['token']) results.merge!(YAML::load(token[:token_data])) if token[:token_data] end results.each_with_object({}) { |i,o| o[i[0].to_sym] = i[1] } end
make_call(url, path, secret, token_secret, params)
click to toggle source
# File lib/omniauth/whichsignupapi/api_methods.rb, line 21 def self.make_call(url, path, secret, token_secret, params) token = TokenTools.new(token_secret).generate_token(secret) uri = URI.parse(url) conn = Faraday.new(:url => url) conn.basic_auth(uri.user, uri.password) unless uri.user.nil? response = conn.get do |req| req.url path req.params.merge!(params) req.params['token'] = token end fail "Connection Problem: [#{response.status}]" unless response.status == 200 results = JSON.parse response.body expand_and_clean_results(token_secret, results) end