diff --git a/translators/Project MUSE.js b/translators/Project MUSE.js index 2a0d0a89f9..9b7065d9bc 100644 --- a/translators/Project MUSE.js +++ b/translators/Project MUSE.js @@ -1,18 +1,18 @@ { - "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" + "translatorID":"c54d1932-73ce-dfd4-a943-109380e06574", + "label":"Project MUSE", + "creator":"Simon Kornblith, Avram Lyon", + "target":"https?://[^/]*muse\\.jhu\\.edu[^/]*/(?:journals/[^/]+/[^/]+/[^/]+\\.html|search/results)", + "minVersion":"1.0.0b4.r1", + "maxVersion":"", + "priority":100, + "inRepository":"1", + "translatorType":4, + "lastUpdated":"2010-11-05 22:03:33" } function detectWeb(doc, url) { - var searchRe = new RegExp("^https?://[^/]+/search/results"); + var searchRe = new RegExp("(^https?://[^/]+/search/results|/toc/)"); if(searchRe.test(url)) { return "multiple"; } else { @@ -32,33 +32,32 @@ function doWeb(doc, url) { var attachments = new Array(); var pdfRe = /PDF/; var htmlRe = /HTML/; - - var tableRows = doc.evaluate('//div[@id="advancedsearch"]/save_form/table//tr', + if (searchRe.test(url)) { + // Search results + 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