![]() |
|
sfFacebookConnectPlugin - 1.0.0Add easily Facebook connect to your symfony website and/or develop IFrame-FBML agnostic Facebook applications |
|
The sfFacebookConnect plugin :
helps easily setup a Facebook Connect authentification on a symfony project using sfGuardUser
is also a good wrapper to create a Facebook application using symfony
Install the plugin
$ svn co http://svn.symfony-project.com/plugins/sfFacebookConnectPlugin/trunk sfFacebookConnectPlugin
Create your application on Facebook
http://www.facebook.com/developers/
Configure your app.yml file with all the correct settings
all: facebook: api_key: xxx api_secret: xxx api_id: xxx redirect_after_connect: false redirect_after_connect_url: '' connect_signin_url: 'sfFacebookConnectAuth/signin' app_url: '/my-app' # the facebook application canvas url guard_adapter: ~ # to customise a guard adapter js_framework: none # none, jQuery or prototype.
sf_guard_plugin: profile_class: sfGuardUserProfile profile_field_name: user_id profile_facebook_uid_name: facebook_uid profile_email_name: email profile_email_hash_name: email_hash
facebook_connect: load_routing: true user_permissions: []
Modify your sfGaurdUserProfile schema to add the 3 new columns needed
# Doctrine schema sample
sfGuardUserProfile: tableName: sf_guard_user_profile columns: user_id: integer(4) first_name: varchar(20) last_name: varchar(20) facebook_uid: integer(4) email: varchar(255) email_hash: varchar(255) relations: sfGuardUser: type: one foreignType: one class: sfGuardUser local: user_id foreign: id onDelete: cascade foreignAlias: Profile
Enable the auth module in your settings.yml: sfFacebookConnectAuth
[php]
all:
.settings:
enabled_modules: [default, sfFacebookConnectAuth]
Optional: enable the sample module in your settings.yml: sfFacebookConnectDemo
[php]
all:
.settings:
enabled_modules: [default, sfFacebookConnectAuth, sfFacebookConnectDemo]
Eventually make myUser.class.php extend sfFacebookUser
Eventually use the sfFacebook filters
etc. A lot still needs to be documented.
Clear your cache
$ php symfony cc
Publish the plugin assets
$ php symfony plugin:publish-assets