thegooglecodearchive / allforgood

Automatically exported from code.google.com/p/allforgood
0 stars 0 forks source link

Code review request #537

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Purpose of code changes on this branch:

Adding server side code for Facebook app.

When reviewing my code changes, please focus on:

After the review, I'll merge this branch into:
/trunk/

Original issue reported on code.google.com by bammi.ra...@gmail.com on 10 Sep 2009 at 9:30

GoogleCodeExporter commented 9 years ago

Original comment by bammi.ra...@gmail.com on 10 Sep 2009 at 9:34

Attachments:

GoogleCodeExporter commented 9 years ago
Facebook application - appengine doc
===========================================================
1. getEvents

url:
  /fb/getEvents
params:
  user_id - Single user_id or list of user id separated by comma.
  start - Optional parameter fpr pagination support
  records - Optional parameter fpr pagination support

Action:
  Retrieve the recent records for the particular user.
  Pagination supported with 'start' and 'records' parameters,
  where start is the starting index and records is the expected maximum results.

Expected output format:
    {
    'status': 'success',
    'data': data,
    'order': order,
    'action': 'getEvents'
    }
where data is @type {object} with feed id as its key, and an object containing 
user
id, feed id, face book event id, network id and event created date as its value.

2. getNetworkEvents

url:
  /fb/getNetworkEvents
params:
  network_id - Single network_id or list of network id separated by comma.
  start - Optional parameter fpr pagination support
  records - Optional parameter fpr pagination support

Action:
  Retrieve the recent records for the particular network.
  Pagination supported with 'start' and 'records' parameters,
  where start is the starting index and records is the expected maximum results.

Expected output format:
    {
    'status': 'success',
    'data': data,
    'order': order,
    'action': 'getNetworkEvents'
    }
where data is @type {object} with feed id as its key, and an object containing 
user
id, feed id, face book event id, network id and event created date as its value.

3. addEvent

url:
  /fb/getEvents

params:
  user_id - Facebook user id.
  story_id - Record id from "all for good" feed.
  event_id - Facebook event id.
  network_id - Facebook network id, optional
  records - Optional parameter fpr pagination supportfgt

Action:
  Add a record with the given data.

Expected output format:
    output = {
      'status': status,
      'action': 'addEvent'
      }
    To trigger the status.

4. removeEvent

url:
  /fb/removeEvent
params:
  user_id - Single user_id.

Action:
  Deletes all the mapping records in appengine for the particular user.

Expected output format:
    {
    'status': 'success',
    'action': 'removeEvent'
    }
    To trigger the status.

Original comment by bammi.ra...@gmail.com on 10 Sep 2009 at 11:20

GoogleCodeExporter commented 9 years ago
To store and retrieve the mapping between the the footprint record id and 
facebook
event id and user.
Facebook application (PHP) file will initiate all calls and get or put the 
content in
appengine
This data is used to display the events created from the AFG application.
Once got the list of event ids, PHP will talk to facebook to get the actual 
events.

http://www.allforgood.org/fb/addEvent wiill be called when an event has created 
in
facebook application.
Similarly, 
http://www.allforgood.org/fb/getEvents - to retrieve faceback event mapping 
based on
user id,
http://www.allforgood.org/fb/getNetworkEvents - to retrieve events based on 
network id,
http://www.allforgood.org/fb/addEvent - to add a new mapping record.

Since this application will be used by most of face book user , rate of usage 
will be
more.

Original comment by bammi.ra...@gmail.com on 10 Sep 2009 at 11:44

GoogleCodeExporter commented 9 years ago
thanks, so this basically just is storing some data specific to the gadget. 
seems 
reasonable; my main concern is security here, what mechanism are you using to 
ensure 
that random data isn't added/deleted/modified? if this is over https and the 
code is 
server side, we can start with a simple shared secret key.
fyi, i'm doing the review on http://footprint2009reviews.appspot.com/48007

Original comment by mbl...@google.com on 10 Sep 2009 at 11:51

GoogleCodeExporter commented 9 years ago

Original comment by adam.sah on 20 Nov 2009 at 12:41