diff --git a/chrome/content/zotero/xpcom/commons.js b/chrome/content/zotero/xpcom/commons.js index 9d7777803c..8b4cdcdfca 100644 --- a/chrome/content/zotero/xpcom/commons.js +++ b/chrome/content/zotero/xpcom/commons.js @@ -369,6 +369,11 @@ Zotero.Commons = new function() { } + this.encodeURIComponent = function (str) { + return encodeURIComponent(str).replace("'", '%27'); + } + + this.error = function (message) { Components.utils.reportError(message); var prompt = Components.classes["@mozilla.org/network/default-prompt;1"] @@ -507,6 +512,8 @@ Zotero.Commons.Bucket.prototype.getItems = function (callback) { var zipsXML = xml.file.(@source == 'original').(typeof format != 'undefined' && format == 'Zotero ZIP Item'); } catch (e) { + alert("Invalid XML response retrieving file upload parameters"); + this._itemsLoading = false; return; } @@ -728,20 +735,31 @@ Zotero.Commons.Bucket.prototype.uploadItems = function (ids) { return; } - var itemsToUpload = false; + var itemsToUpload = []; + itemLoop: for (var i=0, len=items.length; i 1) { - throw ("Commons: More than one local item linked to remote item " + uri); + Zotero.debug("More than one local item linked to remote item " + uri, 2); + return false; } var item = Zotero.URI.getURIItem(rels[0].subject); if (!item) { - Zotero.debug("Linked local item not found for URI " + this.uri, 2); + Zotero.debug("Linked local item not found for remote URI " + uri, 2); return false; }