Confirmed users
152
edits
No edit summary |
|||
| Line 1: | Line 1: | ||
=== App Review Details === | === App Review Details === | ||
* App: Facebook Integration | * App: Facebook Integration | ||
* Review Date: | * Review Date: November 22th 2013 | ||
* Review Lead: | * Review Lead: Stéphanie Ouillon | ||
* Bugs: https://bugzilla.mozilla.org/showdependencytree.cgi?id=847929&hide_resolved=0 | * Bugs: https://bugzilla.mozilla.org/showdependencytree.cgi?id=847929&hide_resolved=0 | ||
{bug|941199} | |||
* Reviewed branch: master | |||
* Latest commit: https://github.com/mozilla-b2g/gaia/commit/9470d15828db48a5558c63a3d9981df9e72eb624 | |||
=== Overview === | === Overview === | ||
The Facebook integration code is primarily about integrating Facebook in the | The Facebook integration code is primarily about integrating Facebook in the Contacts application. It allows you to import Facebook contacts and after that also use Facebook features from the Contacts app. | ||
Imported contacts from Facebook have lots of meta data in the Gaia contacts database: birthday, email addresses, phone numbers, addresses and profile picture. | Imported contacts from Facebook have lots of meta data in the Gaia contacts database: birthday, email addresses, phone numbers, addresses and profile picture. | ||
| Line 27: | Line 30: | ||
(Mentioning the dialer here is relevant since all apps are really the same Communications app) | (Mentioning the dialer here is relevant since all apps are really the same Communications app) | ||
In this case, 'connecting to facebook' really means that we ask the user to login to facebook and then connect to the custom Facebook app hosted | In this case, 'connecting to facebook' really means that we ask the user to login to facebook and then connect to the custom Facebook app hosted by the partner. That will give us an OAuth token which can be used for further API calls to Facebook. | ||
===Architecture=== | ===Architecture=== | ||
| Line 40: | Line 43: | ||
The main source code is contained at: | The main source code is contained at: | ||
* https://github.com/mozilla-b2g/gaia/tree/ | * https://github.com/mozilla-b2g/gaia/tree/master/apps/communications/facebook/ | ||
* https://github.com/mozilla-b2g/gaia/tree/ | * https://github.com/mozilla-b2g/gaia/tree/master/apps/communications/contacts/js/fb/ | ||
The following files have been looked at for this review: | The following files have been looked at for this review: | ||
* | In communications: | ||
* | * ./contacts/js/fb/fb_contact.js - Encapsulates the logic to obtain the data for a DB Contact | ||
* | * ./contacts/js/fb/fb_contact_utils.js - Utilities to get/display contacts info | ||
* | * ./contacts/js/fb/fb_data.js - Defines proxy methods for fb_data_reader | ||
* | * ./contacts/js/fb/fb_init.js - Load contacts/config.json settings for facebook | ||
* | * ./contacts/js/fb/fb_link.js - Ask a contact to be a Facebook FB and manages proposals | ||
* ./contacts/js/fb/fb_link_init.js | |||
* ./contacts/js/fb/fb_messaging.js - Post a message on the wal, send a private message | |||
* ./contacts/js/fb/fb_query.js - Performs FQL queries through FB APIs to get friends | |||
* ./contacts/js/fb/fb_utils.js | |||
* ./contacts/js/fb/friends_list.js - Friends list renderer | |||
[File:Facebook_api_access.jpg] | |||
====Permissions==== | ====Permissions==== | ||