diff --git a/translators/Library Catalog (Voyager).js b/translators/Library Catalog (Voyager).js index 56ad6db6b..a7d740498 100644 --- a/translators/Library Catalog (Voyager).js +++ b/translators/Library Catalog (Voyager).js @@ -1,18 +1,22 @@ { - "translatorID":"88915634-1af6-c134-0171-56fd198235ed", - "translatorType":4, - "label":"Library Catalog (Voyager)", - "creator":"Simon Kornblith", - "target":"Pwebrecon\\.cgi", - "minVersion":"1.0.0b3.r1", - "maxVersion":"", - "priority":100, - "inRepository":true, - "lastUpdated":"2011-01-11 04:31:00" + "translatorID": "88915634-1af6-c134-0171-56fd198235ed", + "label": "Library Catalog (Voyager)", + "creator": "Simon Kornblith", + "target": "Pwebrecon\\.cgi", + "minVersion": "2.1.9", + "maxVersion": "", + "priority": 100, + "inRepository": true, + "translatorType": 4, + "browserSupport": "gcs", + "lastUpdated": "2011-07-01 02:14:28" } function detectWeb(doc, url) { - var export_options = doc.forms.namedItem('frm').elements.namedItem('RD').options; + var export_options = ZU.xpath(doc, '//form[@name="frm"]//*[@name="RD"]'); + if(!export_options.length) return false; + export_options = export_options[0]; + for(var i in export_options) { if(export_options[i].text == 'Latin1 MARC' || export_options[i].text == 'Raw MARC' @@ -27,7 +31,7 @@ function detectWeb(doc, url) { || export_options[i].text == 'MARC communication format' || export_options[i].text == 'MARC Record') { // We have an exportable single record - if(doc.forms.namedItem('frm').elements.namedItem('RC')) { + if(ZU.xpath(doc, '//form[@name="frm"]//*[@name="RC"]').length) { return "multiple"; } else { return "book"; @@ -38,11 +42,11 @@ function detectWeb(doc, url) { function doWeb(doc, url) { var postString = ''; - var form = doc.forms.namedItem('frm'); + var form = ZU.xpath(doc, '//form[@name="frm"]')[0]; var newUri = form.action; var multiple = false; - if(doc.forms.namedItem('frm').elements.namedItem('RC')) { + if(ZU.xpath(form, '//*[@name="RC"]').length) { multiple = true; var availableItems = new Object(); // Technically, associative arrays are objects @@ -114,7 +118,7 @@ function doWeb(doc, url) { } } - var export_options = form.elements.namedItem('RD').options; + var export_options = ZU.xpath(form, '//select[@name="RD"]/option'); for(var i=0; i