Trigger Full Sync when trying to insert an item into a missing local library (though I think the causes of this have been addressed server-side)

This commit is contained in:
Dan Stillman 2010-09-07 18:39:05 +00:00
parent 1f93fa405c
commit 539ac39d70

View file

@ -1216,7 +1216,18 @@ Zotero.Item.prototype.save = function() {
sql = sql.substring(0, sql.length-2) + ")";
// Save basic data to items table
var insertID = Zotero.DB.query(sql, sqlValues);
try {
var insertID = Zotero.DB.query(sql, sqlValues);
}
catch (e) {
if (this.libraryID
&& ((e.indexOf && e.indexOf('fki_items_libraryID_libraries_libraryID') != -1)
|| (!Zotero.Libraries.exists(this.libraryID)))) {
var msg = "Library " + this.libraryID + " for item " + this.key;
var e = new Zotero.Error(msg, "MISSING_OBJECT");
throw (e);
}
}
if (!itemID) {
itemID = insertID;
}