Sin descripción

facebook.rb 994B

123456789101112131415161718192021222324252627282930
  1. module Oauth
  2. class Facebook < Oauth::Base
  3. ACCESS_TOKEN_URL = 'https://graph.facebook.com/v2.5/oauth/access_token'
  4. DATA_URL = 'https://graph.facebook.com/v2.5/me'
  5. def get_data
  6. response = @client.get(DATA_URL, access_token: @access_token, fields: 'first_name, last_name, email, gender, about, link, website, picture')
  7. @data = JSON.parse(response.body).with_indifferent_access
  8. @data['image_url'] = @data['picture']['data']['url'] if @data['picture'].present?
  9. @uid = @data[:id] ||= @data[:sub]
  10. @data
  11. end
  12. def formatted_user_data
  13. {
  14. facebook_profile: @data['link'],
  15. first_name: @data['first_name'],
  16. last_name: @data['last_name'],
  17. image_url: @data['image_url'],
  18. provider: 'facebook',
  19. gender: @data['gender'],
  20. token: @access_token,
  21. email: @data['email'],
  22. uid: @data['id']
  23. }
  24. end
  25. end
  26. end