Improve handling of corrupt translator data, and add support for III proxies
This commit is contained in:
parent
bd367dcd85
commit
d64379290c
1 changed files with 17 additions and 10 deletions
|
@ -57,7 +57,8 @@ Zotero.Translators = new function() {
|
||||||
_initialized = true;
|
_initialized = true;
|
||||||
|
|
||||||
// Build caches
|
// Build caches
|
||||||
for(var i in translators) {
|
for(var i=0; i<translators.length; i++) {
|
||||||
|
try {
|
||||||
var translator = new Zotero.Translator(translators[i]);
|
var translator = new Zotero.Translator(translators[i]);
|
||||||
_translators[translator.translatorID] = translator;
|
_translators[translator.translatorID] = translator;
|
||||||
|
|
||||||
|
@ -66,6 +67,12 @@ Zotero.Translators = new function() {
|
||||||
_cache[type].push(translator);
|
_cache[type].push(translator);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch(e) {
|
||||||
|
Zotero.logError(e);
|
||||||
|
try {
|
||||||
|
Zotero.logError("Could not load translator "+JSON.stringify(translators[i]));
|
||||||
|
} catch(e) {}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sort by priority
|
// Sort by priority
|
||||||
|
@ -268,7 +275,6 @@ Zotero.Translators = new function() {
|
||||||
// check whether newTranslator is actually newer than the existing
|
// check whether newTranslator is actually newer than the existing
|
||||||
// translator, and if not, don't update
|
// translator, and if not, don't update
|
||||||
if(Zotero.Date.sqlToDate(newTranslator.lastUpdated) < Zotero.Date.sqlToDate(oldTranslator.lastUpdated)) {
|
if(Zotero.Date.sqlToDate(newTranslator.lastUpdated) < Zotero.Date.sqlToDate(oldTranslator.lastUpdated)) {
|
||||||
Zotero.debug("Translators: Received older version of "+newTranslator.label+" from repo ("+newTranslator.lastUpdated+" vs. "+oldTranslator.lastUpdated+")");
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -298,7 +304,8 @@ Zotero.Translators = new function() {
|
||||||
|
|
||||||
// Store
|
// Store
|
||||||
if(Zotero.isChrome || Zotero.isSafari) {
|
if(Zotero.isChrome || Zotero.isSafari) {
|
||||||
localStorage["translatorMetadata"] = JSON.stringify(serializedTranslators);
|
var serialized = JSON.stringify(serializedTranslators);
|
||||||
|
Zotero.debug("Translators: Saved updated translator list ("+localStorage["translatorMetadata"].length+" characters)");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reinitialize
|
// Reinitialize
|
||||||
|
@ -415,7 +422,7 @@ Zotero.Translator.prototype.init = function(info) {
|
||||||
|
|
||||||
if(this.browserSupport.indexOf(Zotero.browser) !== -1) {
|
if(this.browserSupport.indexOf(Zotero.browser) !== -1) {
|
||||||
this.runMode = Zotero.Translator.RUN_MODE_IN_BROWSER;
|
this.runMode = Zotero.Translator.RUN_MODE_IN_BROWSER;
|
||||||
} else if(!Zotero.isServer) {
|
} else {
|
||||||
this.runMode = Zotero.Translator.RUN_MODE_ZOTERO_STANDALONE;
|
this.runMode = Zotero.Translator.RUN_MODE_ZOTERO_STANDALONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue