Edited wiki page GSoC2011IntegrationWithExternalAPIs through web user interface.
diff --git a/GSoC2011IntegrationWithExternalAPIs.wiki b/GSoC2011IntegrationWithExternalAPIs.wiki
index bf20653..ae0111a 100644
--- a/GSoC2011IntegrationWithExternalAPIs.wiki
+++ b/GSoC2011IntegrationWithExternalAPIs.wiki
@@ -15,17 +15,26 @@
 ===Problems & Solutions===
  * *Problem:* exporting a JavaScript list
  * *Solution:* export spreadsheet on client side. Implement JS methods over GData Protocols.
+ * *Problem:* Making cross domain requests
+ * *Solution:* Use an proxy url to emulate cross-domain requests. See blog post from [http://melange-dev.blogspot.com/2011/08/gsoc-2011-integration-with-external.html, week10] and [http://melange-dev.blogspot.com/2011/08/gsoc-2011-integration-with-external_08.html Week11].
+ * *Problem:* Uploading chunks of data.
+ * *Solution:* For current Spreadsheet API it's not possible to add multiple rows with a batch requests. We used uploading document as csv and converting it to native spreadsheets format after upload. Uploading multiple chunks of a big data prevents converting after upload. So we can't export very large lists.
+
+===Result===
 
 == 2.2 Student Proposals ==
 ===Overview ===
 Students 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 ===
  * *Problem:* Student may not be awere that proposal is syncronised only when he/she clicks "Sync Now" button.
- * *Solution1:* Give responsibility to student.
- * *Solution2:* Sync proposal with stored ACL. Check for single revisions and get the closest revision to deadline.
+ * *Solution:* Give responsibility to student.
+
 
  * *Problem:* As Google Documents stores HTML files in full-HTML form (including images, css files etc.) a method must be implemented to embed that document to actual proposal entry.
- * *Solution:* 
+ * *Solution:* Google Documents no longer supports HTML editing. We export document format documents as HTML. This document comes style embed in. 
+
+=== Result ===
+Syncing 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) ==
 ===Overview===
@@ -58,30 +67,13 @@
 = 5. Design & Terminology = 
 == 5.1 Open Auth Roundtrip ==
 https://lh3.googleusercontent.com/-G5GUxfUdXS0/TgC_I0dXVmI/AAAAAAAAADI/hAGOlYZngq0/s640/MelangeOAuth%252520%2525281%252529.png
-== 5.2 Resource ==
+== 5.2 Popup OAuth Mechanism ==
+It's important to authenticate user without leaving page especially if user has some unposted data on page. Popup mechanism works in the following way.
+ * Developer includes 'melange.gdata.core.js' dependency to it's page that uses GData features.
+ * A function that uses GData features turns itself to a login required function with myfunc = melange.gdata.createAuthorizedFunction(myfunc, [])
+ * When generated myfunc function is run, it triggers popup roundtrip if user is not logged in to GDocs.
+ * After authentication finishes, popup closes itself after telling parent window login is successful and parent window resumes execution of myfunc function that is intended to run.
 
-Resource is a document or file that is exported to GDocs and being kept track of. When Melange exports a document to GDocs it will store returned document ID from Google Documents API. This document should be associated with user for whom resource exported for, and with a unique key that tells where the resource exported from. This shows the basic structure of Resource class:
-
-{{{
-class Resource(db.Model):
-  """Model of an exported Google Docs resource
-  """
-
-  #: Required field storing "ID" of exported resource.
-  #: This value is returned from Google Documents at first upload.
-  resource_id = db.StringProperty(required=True)
-
-  #: Name of the resource. This value is changed only when
-  #: actual name of exported Google document changes.
-  resource_name = db.StringProperty(required=True)
-
-  #: Owner of document for whom document exported for, and 
-  #: whose Google Documents account is expected to has the resource.
-  owner = db.ReferenceProperty(reference_class=soc.models.user.User,
-                               required=True,
-                               collection_name='exported_documents',
-                               verbose_name=ugettext('Owner'))
-}}}
 ----
 =6. Meeting Notes & Agendas =
 == Monday, May 16 18:30:00 in UTC (Skype Conference)==
@@ -110,4 +102,10 @@
 
 == Monday, July 21 20:00:00 in UTC (GTalk with Mario) ==
 === Notes ===
-It's not convenient to export lists from server side. GAE has 30 second request limit that may prevent uploading big lists. Instead of that, we can upload spreadsheets with JS over GData rest protocol. 
\ No newline at end of file
+It's not convenient to export lists from server side. GAE has 30 second request limit that may prevent uploading big lists. Instead of that, we can upload spreadsheets with JS over GData rest protocol. 
+
+== Agust 6 20:00:00 in UTC (GTalk with Mario) ==
+=== Notes ===
+ * We talked about how to eliminate cross-domain requests by emulating them with a proxy URL. 
+ * Mario stressed: "Those are nice-to-have, the issues are filed directly by Carol so obviously they have high priority" 
+ * He also warned me about updating wiki more frequently.
\ No newline at end of file