/devise_oauth2_canvas_facebook

Devise plugin for Facebook OAuth2 Graph login using fbgraph

Primary LanguageRuby

Only Rails 3 is supported.

Uses fbgraph (http://github.com/nsanta/fbgraph)
Could use the Oauth2 gem directly, but it is more than likely that you
would want to use other features of facebook (ie post feed updates).


How to use, web applications
----------
Setup devise (http://github.com/plataformatec/devise), use Rails 3

Include the gem in Gemfile after devise:
  gem 'devise'
  gem 'devise_oauth2_canvas_facebook'

Include the ':devise_oauth2_canvas_facebook' in your model:

  devise :database_authenticatable, :registerable, :confirmable,
         :recoverable, :rememberable, :trackable, :validatable, :devise_oauth2_canvas_facebook


Add the following config options:

$ config/initializers/devise.rb

  config.facebook_api_key = "KEY"
  config.facebook_api_secret = "SECRET"
  config.facebook_permissions = 'offline_access,email,publish_stream'

Good minimum to have is "offline_access,email"

Create a migration file to add the columns:

  add_column :users, :facebook_uid, :string
  add_column :users, :facebook_token, :string

Finally, update your view to include "Login with facebook" link:
  <%= link_to "Login with facebook", user_fb_auth_path %>
  
How to use, facebook canvas applications

------

As above, except with this configuration:

$ config/initializers/devise.rb

  config.facebook_api_key = "KEY"
  config.facebook_api_secret = "SECRET"
  config.facebook_permissions = 'offline_access,email,publish_stream'
  config.facebook_canvas_app = true
  config.facebook_canvas_url = 'your_facebook_canvas_app_url'