www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit fc6847ca9872ee537f46ecc2df75a00bdc8c74e8
parent 2190c82dcf86c5c25473cfc58c995413b85abf03
Author: Dan Stillman <dstillman@zotero.org>
Date:   Thu,  7 Jan 2010 09:59:43 +0000

Pushed updated Ovid translator that supports non-English interfaces


Diffstat:
Mtranslators/Ovid.js | 33++++++++++++++++++++++++---------
1 file changed, 24 insertions(+), 9 deletions(-)

diff --git a/translators/Ovid.js b/translators/Ovid.js @@ -8,7 +8,7 @@ "maxVersion":"", "priority":100, "inRepository":true, - "lastUpdated":"2009-12-23 18:00:00" + "lastUpdated":"2010-01-07 10:00:00" } function detectWeb(doc, url) { @@ -17,16 +17,31 @@ function detectWeb(doc, url) { if (prefix == 'x') return namespace; else return null; } : null; - var results = doc.evaluate('//div[@class="bibheader-resultsrange"]/b', doc, nsResolver, - XPathResult.ANY_TYPE, null).iterateNext(); - - if(!doc.evaluate('//span[contains(./text(), "Results Manager")]', doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext()) { + var rmXPath = '//span['; + var rmText = [ + "Results Manager", + "Gestionnaire des résultats", + "Ergebnismanager", + "檢索結果管理員", + "Administrador de resultados", + "检索结果管理员" + ]; + var contains = []; + for each(var str in rmText) { + contains.push('contains(./text(), "' + str + '")'); + } + rmXPath += contains.join(' or ') + ']' + if(!doc.evaluate(rmXPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext()) { return false; } - if(results) { - results = Zotero.Utilities.trimInternal(results.textContent); - if(results.indexOf("-") != -1) { + var results = doc.evaluate('//div[@class="bibheader-resultsrange"]/b', doc, nsResolver, XPathResult.ANY_TYPE, null); + var first = results.iterateNext(); + if(first) { + first = Zotero.Utilities.trimInternal(first.textContent); + var second = results.iterateNext(); + second = Zotero.Utilities.trimInternal(second.textContent); + if(first.indexOf("-") != -1 || second.indexOf("-") != -1) { return "multiple"; } else { return "journalArticle"; @@ -185,6 +200,6 @@ function doWeb(doc, url) { if(haveStarted) { newItem.complete(); } - }); + }, function () { Zotero.done(); }); Zotero.wait(); } \ No newline at end of file