{ "translatorID":"c54d1932-73ce-dfd4-a943-109380e06574", "translatorType":4, "label":"Project MUSE", "creator":"Simon Kornblith", "target":"https?://[^/]*muse\\.jhu\\.edu[^/]*/(?:journals/[^/]+/[^/]+/[^/]+\\.html|search/results)", "minVersion":"1.0.0b4.r1", "maxVersion":"", "priority":100, "inRepository":true, "lastUpdated":"2008-12-22 19:50:00" } function detectWeb(doc, url) { var searchRe = new RegExp("^https?://[^/]+/search/results"); if(searchRe.test(url)) { return "multiple"; } else { return "journalArticle"; } } function doWeb(doc, url) { var namespace = doc.documentElement.namespaceURI; var nsResolver = namespace ? function(prefix) { if (prefix == 'x') return namespace; else return null; } : null; var searchRe = new RegExp("^https?://[^/]+/search/results"); if(detectWeb(doc, url) == "multiple") { var items = new Array(); var attachments = new Array(); var pdfRe = /PDF/; var htmlRe = /HTML/; var tableRows = doc.evaluate('//div[@id="advancedsearch"]/save_form/table//tr', doc, nsResolver, XPathResult.ANY_TYPE, null); var tableRow; // Go through table rows while(tableRow = tableRows.iterateNext()) { // aid (article id) is what we need to get it all as one file var input = doc.evaluate('.//input[@name="aid"]', tableRow, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); var title = doc.evaluate('.//div[@class="title"]', tableRow, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(input && input.value && title && title.textContent) { items[input.value] = title.textContent; var aTags = tableRow.getElementsByTagName("a"); // get attachments attachments[input.value] = new Array(); for(var i=0; i