www

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

commit 6003e146b81ceefbda3555f21a42264e5e78f7a7
parent 40e02e0ea8d0e2c12f7f3f97436ad2cd332f1b59
Author: Matt Burton <mcburton@gmail.com>
Date:   Thu, 26 Feb 2009 19:07:39 +0000

Adding preliminary support for Dutch, fixing some field cleanup 

Diffstat:
Mtranslators/Library Catalog (SIRSI).js | 16++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/translators/Library Catalog (SIRSI).js b/translators/Library Catalog (SIRSI).js @@ -73,10 +73,11 @@ function scrape(doc) { if(!node) { var node = doc.evaluate('./TD[1]/text()[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); } - if(node) { var casedField = Zotero.Utilities.superCleanString(doc.evaluate('./TH[1]/text()[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().nodeValue); field = casedField.toLowerCase(); + field = field.replace(/:./,""); + Zotero.debug("field="+field); var value = Zotero.Utilities.superCleanString(node.nodeValue); if(field == "publisher") { newItem.publisher = value; @@ -88,14 +89,17 @@ function scrape(doc) { var re = /^[0-9](?:[0-9X]+)/; var m = re.exec(value); newItem.ISBN = m[0]; - } else if(field == "title" || field == "título") { + } else if(field == "title" || field == "título" || field == "titre") { var titleParts = value.split(" / "); newItem.title = Zotero.Utilities.capitalizeTitle(titleParts[0]); - } else if(field == "publication info" || field == "publicación") { + } else if(field == "publication info" || field == "publicación" || field == "publication") { var pubParts = value.split(" : "); newItem.place = pubParts[0]; - if (pubParts[1].match(/\d+/)) newItem.date = pubParts[1].match(/\d+/)[0]; - } else if(field == "personal author" || field == "autor personal") { + if (pubParts[1].match(/\d+/)) { + newItem.date = pubParts[1].match(/\d+/)[0]; + newItem.publisher = pubParts[1].match(/(.*),/)[1]; + } + } else if(field == "personal author" || field == "autor personal" || field == "auteur") { if(authors.indexOf(value) == -1) { value = value.replace(/(\(|\)|\d+|\-)/g, ""); newItem.creators.push(Zotero.Utilities.cleanAuthor(value, "author", true)); @@ -116,7 +120,7 @@ function scrape(doc) { newItem.creators.push({lastName:value, fieldMode:true}); authors.push(value); } - } else if(field == "edition") { + } else if(field == "edition" || field == "édition") { newItem.edition = value; } else if(field == "subject term" || field == "corporate subject" || field == "geographic term" || field == "subject") { var subjects = value.split("--");