No commit activity in last 3 years
No release in over 3 years
Authlogic plugin to support Facebook OAuth2 javascript sessions. This is now just a facade for authlogic_facebook_shim so please use that instead.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

authlogic_facebook_shim¶ ↑

This is a plugin for integrating facebook sessions into authlogic. It relies on using the Javascript SDK to login to facebook. Currently the shim support koala (github.com/arsduo/koala) for access the graph API but if you have a preferred library it is easy to add an adapter.

This requires a config/facebook.yml file that looks like this:

development:
  app_id: appid
  api_key: apikey
  secret_key: secretkey

production:
  app_id: appid
  api_key: apikey
  secret_key: secretkey

If you don’t have different facebook credentials for different environments you can set these in UserSession

facebook_app_id     'appid'
facebook_api_key    'apikey'
facebook_secret_key 'secretkey'

In your controller you probably have something like this;

def current_user_session
  @current_user_session ||= AccountSession.find
end

def current_user
  @current_user ||= current_user_session.try(:user)
end

def logged_in?
  current_user && !current_user_session.stale?
end

To get hold of the facebook particulars you will need to add something like this;

def facebook_user
  current_user_session.try(:facebook_user)
end

def facebook_user?
  !facebook_user.nil?
end

def facebook_session?
  current_user_session.try(:facebook_session?)
end

Adapters¶ ↑

Currently the only adapter in the shim is for koala (github.com/arsduo/koala) but if you have a preferred wrapper for accessing the graph API please fork the project and add your own adapter (with tests) then send me a pull request.

Note on Patches/Pull Requests¶ ↑

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 James McCarthy. See LICENSE for details.