Sha256: d702a56bda46e6defc526fb8f47748570ba0c6b243aea8071c733c71968d4b15
Contents?: true
Size: 1003 Bytes
Versions: 2
Compression:
Stored size: 1003 Bytes
Contents
# https://developers.facebook.com # https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow class LuxOauth::Facebook < LuxOauth def login 'https://www.facebook.com/v2.8/dialog/oauth?scope=email&client_id=%s&redirect_uri=%s' % [@key, CGI::escape(redirect_url)] end def format_response opts { email: opts['email'], avatar: '//graph.facebook.com/%s/picture?type=large' % opts['id'], name: opts['name'] } end def callback(session_code) result = RestClient.post('https://graph.facebook.com/v2.8/oauth/access_token', { redirect_uri: redirect_url, client_id: @key, client_secret: @secret, code: session_code }, { :accept => :json }) access_token = JSON.parse(result)['access_token'] response = RestClient.get('https://graph.facebook.com/me', { :accept => :json, :params => { :access_token => access_token } }) format_response JSON.parse response end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
lux-fw-0.1.35 | ./lib/vendor/oauth/lib/facebook.rb |
lux-fw-0.1.17 | ./lib/vendor/oauth/lib/facebook.rb |