class OmniAuth::Strategies::Taobao
Public Instance Methods
callback_phase()
click to toggle source
Calls superclass method
# File lib/omniauth/strategies/taobao.rb, line 15 def callback_phase ignore_sandbox_ssl_verify! super end
raw_info()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 33 def raw_info @rawinfo ||= (!!options.taobao_user_role ? fetch_raw_info : fetch_raw_info_from_params) end
request_phase()
click to toggle source
Calls superclass method
# File lib/omniauth/strategies/taobao.rb, line 10 def request_phase options[:state] ||= '1' super end
Private Instance Methods
fetch_raw_info()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 50 def fetch_raw_info service = ::Taobao::TOP::Service.new(options.client_id, options.client_secret, :session => @access_token.token) res = service.get(raw_info_method, :fields => raw_info_fields) res.error? ? {} : res.body.user end
fetch_raw_info_from_params()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 56 def fetch_raw_info_from_params attrs = [["user_id", "taobao_user_id"],["nick", "taobao_user_nick"]] Hash[attrs.collect{|arr| [arr[0], @access_token[arr[1]]]}].select{|k,v| v != nil} end
ignore_sandbox_ssl_verify!()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 62 def ignore_sandbox_ssl_verify! if ::Taobao::TOP.sandbox? && defined?(::OpenSSL::SSL::VERIFY_PEER) ::OpenSSL::SSL.send :remove_const, :VERIFY_PEER ::OpenSSL::SSL.const_set :VERIFY_PEER, 0 end end
raw_info_fields()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 42 def raw_info_fields { "buyer" => "user_id,nick,sex,avatar,buyer_credit,has_shop,vip_info", "seller" => "user_id,nick,sex,avatar,seller_credit,type,has_shop,is_golden_seller,vip_info", "user" => "user_id,nick,sex,avatar,email,buyer_credit,seller_credit,location,type,has_shop,vip_info" }[options.taobao_user_role.to_s] end
raw_info_method()
click to toggle source
# File lib/omniauth/strategies/taobao.rb, line 38 def raw_info_method ["taobao", "user", "#{options.taobao_user_role}", "get"].uniq.join(".") end