|
GSoC2011IntegrationWithExternalAPIs
tracks progress for the "integration with external apis" project.
Phase-Requirements
1. IntroductionThis page is tracking of progress for GSoC 2011 Project: Integration with External API's 2. Requirements2.1 Melange ListsOverviewBasically an export button for each lists on Melange that triggers an export mechanism to Google SpreadSheets. (including OAuth roundtrip, access token storing on datastore) Problems & Solutions
Result2.2 Student ProposalsOverviewStudents will be able to edit their proposals through tinyMCE editor or link to a Google Document file. There will be a "Sync Now" button to syncronize proposal that Melage holds with actual Google Documents file. Problems & Solutions
ResultSyncing proposal is student's responsibity. Student selects it's document through an autocomplete widget after logged in to Google Documents. 2.3 Surveys (issue 1243)OverviewExport a survey as either a pdf, google doc, plain text, something to save the entire webpage view. 2.4 Tracking Numbers (issue 1239)OverviewProgram administrators have spreadsheets that will enable students to have tracking numbers for their welcome packages and tshirts. Same for payment status. 2.5 Export Melange stuff for developers' useOverviewExport some statistics and data to Google Documents to work on or to integrate with other services like Fusion Tables. 4. Project TimelineThis table is based on deliverables.
5. Design & Terminology5.1 Open Auth Roundtrip
5.2 Popup OAuth MechanismIt's important to authenticate user without leaving page especially if user has some unposted data on page. Popup mechanism works in the following way.
6. Meeting Notes & AgendasMonday, May 16 18:30:00 in UTC (Skype Conference)TODOs
Tuesday, May 20 20:00:00 in UTC (GTalk with Mario)Mario delivered me notes for my project from discussion with Melange team. TODOS:
Monday, June 21 20:00:00 in UTC (GTalk with Mario)TODOS:
Wednesday, June 29 (GTalk with Mario)NotesBacause GAE filesystem is not writable it's not possible to export a document with current GData API, we talked how to overcome this. We decided, to modify gdata library as least as possible, we need to extend 'Export' funciton's defination to accept a memory file besides file path. Not broking current API is important. Sunday, July 3 (GTalk with Mario)NotesI asked Mario about easiest integration of 'gdata.js' script for each page that uses it. I asked how to eliminate initializing it in every page (by moving initialization to base template). The reason for this was, in future ther would be probably lots of pages that uses 'gdata.js' script and i wanted to move intialization code to base.html where initializaiton is done automatically. Mario conclusion: "sometimes it's a tradeoff between DRY and YAGNI :)" We decided to keep the initalization in each page uses 'gdata.js' until we really need to move it to the base template. Sunday, July 6 (GTalk with Mario)NotesIt's not possible to show OAuth roundtrip in an IFrame. Mario pointed a few ways of possible solutions. I tried on a https connection but that didn't work. So we had to decide to show OAuth roundtrip in a popup window. I created an issue for this. Tuesday, June 8 (GTalk with Mario)Notesfor proposal sync page, we decided leaving search queries to GData API, instead of getting full documents after the page is loaded. Tuesday, June 23 (GTalk with Mario)NotesMario suggested to use Restful API for GData on client-side as there isn't a ready JS API. This will also prevent wasting datastore cycles as we won't run two transaction for the same entities. Tuesday, June 28 (GTalk with Mario)NotesWe talked about how to skip popup blockers for popup pages. We decided we should trigger popup mechanism exactly just after a click event occurs. We rediscussed our current popup mechanism and decided to make some changes on design through this. Agust 6 20:00:00 in UTC (GTalk with Mario)Notes
| ||||||||||||||||||