Sha256: e58072ebaca1f935c9bc13bdf0fb1541833b7da1019681e4a862488b936c02c2
Contents?: true
Size: 1.2 KB
Versions: 1
Compression:
Stored size: 1.2 KB
Contents
require 'omniauth-oauth2' require 'coinbase' module OmniAuth module Strategies class Coinbase < OmniAuth::Strategies::OAuth2 option :name, 'coinbase' option :client_options, { :site => 'https://coinbase.com', :authorize_url => 'https://www.coinbase.com/oauth/authorize', :token_url => 'https://www.coinbase.com/oauth/token', :proxy => ENV['http_proxy'] ? URI(ENV['http_proxy']) : nil, :ssl => { :verify => true, :cert_store => ::Coinbase::Client.whitelisted_cert_store } } option :authorize_options, [:scope, :meta] uid { raw_info['id'] } info do { :id => raw_info['id'], :name => raw_info['name'], :email => raw_info['email'] } end extra do { :raw_info => raw_info } end def raw_info @raw_info ||= MultiJson.load(access_token.get('/api/v1/users').body)['users'][0]['user'] rescue ::Errno::ETIMEDOUT raise ::Timeout::Error end def callback_url options[:redirect_uri] || (full_host + script_name + callback_path) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
omniauth-coinbase-1.0.6 | lib/omniauth/strategies/coinbase.rb |