Simon Kornblith 2012-11-11 17:14:19 -05:00
parent 425b2161cc
commit a4f4691b04

View File

@ -341,15 +341,8 @@ Zotero.Server.Connector.SaveSnapshot.prototype = {
*/ */
"init":function(url, data, sendResponseCallback) { "init":function(url, data, sendResponseCallback) {
Zotero.Server.Connector.Data[data["url"]] = "<html>"+data["html"]+"</html>"; Zotero.Server.Connector.Data[data["url"]] = "<html>"+data["html"]+"</html>";
var browser = Zotero.Browser.createHiddenBrowser(); Zotero.HTTP.processDocuments(["zotero://connector/"+encodeURIComponent(data["url"])],
function(doc) {
var pageShowCalled = false;
var cookieSandbox = new Zotero.CookieSandbox(browser, data["url"], data["cookie"], url.userAgent);
browser.addEventListener("pageshow", function() {
if(browser.contentDocument.location.href == "about:blank"
|| browser.contentDocument.readyState !== "complete") return;
if(pageShowCalled) return;
pageShowCalled = true;
delete Zotero.Server.Connector.Data[data["url"]]; delete Zotero.Server.Connector.Data[data["url"]];
// figure out where to save // figure out where to save
@ -362,8 +355,6 @@ Zotero.Server.Connector.SaveSnapshot.prototype = {
} catch(e) {} } catch(e) {}
try { try {
var doc = browser.contentDocument;
// create new webpage item // create new webpage item
var item = new Zotero.Item("webpage"); var item = new Zotero.Item("webpage");
item.libraryID = libraryID; item.libraryID = libraryID;
@ -387,17 +378,14 @@ Zotero.Server.Connector.SaveSnapshot.prototype = {
Zotero.Attachments.importFromDocument(doc, itemID); Zotero.Attachments.importFromDocument(doc, itemID);
} }
// remove browser
Zotero.Browser.deleteHiddenBrowser(browser);
sendResponseCallback(201); sendResponseCallback(201);
} catch(e) { } catch(e) {
sendResponseCallback(500); sendResponseCallback(500);
throw e; throw e;
} }
}, false); },
null, null, false,
browser.loadURI("zotero://connector/"+encodeURIComponent(data["url"])); new Zotero.CookieSandbox(null, data["url"], data["cookie"], url.userAgent));
} }
} }