gnu-social/plugins/FacebookBridge
Zach Copley 36d619480a Rip out user, group and site design customization code
Squashed commit of the following:

commit 0bcfb6535115ec0a11669420f8689aeedc417bc8
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 15:51:47 2011 -0400

    Remove design-related stuff from the API

commit 88da010256fbcaee1ff01d9507ea47d3225f2825
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 15:40:16 2011 -0400

    Mop up misc design related code

commit 11958b064745b797b4c9f9f4b7e8f65e4c82ce83
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 15:21:00 2011 -0400

    Remove Design DB_DataObject class and references to it in schema

commit f8540594728ce6ba4697eb21657ccb897a9fc127
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 13:15:54 2011 -0400

    Remove design-related actions and widgets

commit ddf7b4d425b88b58956b8be06047d2a3e0560bd2
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 13:10:57 2011 -0400

    Remove navigation / routing to design settings actions

commit e3f280f8780d99168edf37ef766956f281e9c5da
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 13:03:09 2011 -0400

    CurrentUserDesignAction -> Action

commit 6780b1a07e1375a7fa0fd48c8bf3109d9a12e33e
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 12:54:22 2011 -0400

    * GroupDesignAction -> GroupAction (new base class for group actions)

commit 2136377e895db274709a1d486f377f13946ccfd6
Author: Zach Copley <zach@status.net>
Date:   Thu Jun 9 12:36:40 2011 -0400

    OwnerDesignAction -> Action
2011-06-09 16:20:19 -04:00
..
actions Fix xgettext translator comment. 2011-06-05 19:27:42 +02:00
classes Update translator documentation. 2011-04-08 10:59:10 +02:00
extlib FacebookSSO -> FacebookBridge 2010-11-16 02:33:17 +00:00
images FacebookSSO -> FacebookBridge 2010-11-16 02:33:17 +00:00
lib Fixed incorrect single quotes with newlines from Commit:3e8bf13aab25050cce09a3180ea7b56c41ed40e3. 2011-04-08 18:47:04 +02:00
locale Localisation updates from http://translatewiki.net. 2011-06-05 21:15:31 +02:00
FacebookBridgePlugin.php Rip out user, group and site design customization code 2011-06-09 16:20:19 -04:00
README Add README with intallation/upgrade instructions to the Facebook Bridge plugin 2011-01-05 15:34:10 -08:00

Facebook Bridge Plugin

The Facebook Bridge plugin allows you to integrate your StatusNet site
with Facebook. It uses Facebook's new SDKs, the Graph API and OAuth
2.0, and supercedes the previous "Facebook" plugin, which relied on the
Facebook's now deprecated "Old REST API". The other major difference is
the troublesome and confusing Facebook Canvas Application has been
removed.

Note: Do NOT try to run the old Facebook plugin and this plugin at the same
time. It won't work.

Features for the new Facebook Bridge Plugin:

- "Login with Facebook" (AKA single-sign-on using Facebook Connect for
  authentication).

- Registration with Facebook Connect, including automatic profile creation
  based on users' Facebook accounts.

- Post mirroring -- posting a notice on StatusNet automatically creates a post
  on Facebook, deleting it on StatusNet deletes it on Facebook, and faving it
  "likes" it on Facebook.


Upgrading from the old Facebook plugin
======================================

Remove the addPlugin('Facebook') statement for the old Facebook plugin
from your config.php and adjust your existing Facebook application using
the setup instructions below as a guide, then enable the new plugin (also
described below). Existing users who have setup post mirroring shouldn't
have to do anything. The new Facebook Bridge plugin will keep their notices
flowing to Facebook.

Setup
=====

There are two parts configuring the Facebook Bridge plugin -- setup on the
Facebook side, and setup on the StatusNet side.

Setup (Facebook side)
=====================

The first step is to login to Facebook and register a Facebook application
to get an application ID and secret.

Use the handy Facebook application setup wizard:

http://developers.facebook.com/setup/

Once you've set up your application, you'll need to enter the Facebook Developer
dashboard (http://www.facebook.com/developers/editapp.php?app_id=YOUR_APPLICATION_ID)
and customize a few things:

About tab
---------

Set your logos, application description, etc. as you see fit.

Web Site tab
------------

Make a note of the "Application ID" and "Application Secret" Facebook generated
for your application. You'll need both of those later.

Make sure "Site URL" points to your StatusNet installation
(e.g.: http://example.net/).

- Special Note for multi-site Status Networks: enter your domain (SLD and TLD)
  in the "Site Domain" field. (e.g.: status.net). This will allow a single
  Facebook Application to work with all your network subdomains (*.status.net).

Facebook Integration tab
------------------------

Use the default settings.

Mobile and Devices tab
----------------------

Use the default settings.

Advanced tab
------------

In the Authentication section, set the "Deauthorize Callback" to
http://YOURSITE/facebook/deauthorize (e.g.: http://example.net/facebook/deauthorize).

In the Migrations section, ensure that "OAuth 2.0 for Canvas" is set to
"Enabled". It probably already will be, but double check.

The default settings should suffice for everything else.

Setup (StatusNet side)
======================

To enable the Facebook Bridge plugin, add

    addPlugin('FacebookBridge');

to you config.php.

Next login to your StatusNet site as a user with the administrator role, and
navigate to the admin menu. You should see a new tab for the Facebook admin
panel, titled "Facebook".  Enter your Facebook application ID and secret in
that admin panel and hit save. After that, the Facebook Bridge Plugin should
be ready to use.