www

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

commit 90a24521c44bf05bea8338724caff9f66e61ca03
parent a7177c6ce08539993e0e8b35f576b81ea4cdc49f
Author: Avram Lyon <ajlyon@gmail.com>
Date:   Wed, 29 Dec 2010 18:38:07 +0000

Trans: Updates to WilsonWeb, submitted by Brinda Shah


Diffstat:
Mtranslators/WilsonWeb.js | 85+++++++++++++++++++++++++++++++++++++++----------------------------------------
1 file changed, 42 insertions(+), 43 deletions(-)

diff --git a/translators/WilsonWeb.js b/translators/WilsonWeb.js @@ -1,14 +1,14 @@ { - "translatorID":"af1af8fa-19dc-486f-a8cc-107acb849101", - "label":"WilsonWeb", - "creator":"Brinda Shah", - "target":"^http://(vnweb|webbeta|verityqa|verityqa2|atg-dev05)\\.hwwilsonweb\\.com/hww/results/", - "minVersion":"1.0", - "maxVersion":"", - "priority":100, - "inRepository":"1", - "translatorType":4, - "lastUpdated":"2010-11-10 10:15:00" + "translatorID":"af1af8fa-19dc-486f-a8cc-107acb849101", + "label":"WilsonWeb", + "creator":"Brinda Shah", + "target":"^http://(vnweb|webbeta|verityqa|verityqa2|atg-dev05)\\.hwwilsonweb\\.com/hww/results/", + "minVersion":"1.0", + "maxVersion":"", + "priority":100, + "inRepository":"1", + "translatorType":4, + "lastUpdated":"2010-11-23 14:12:32" } var dispType='brief'; @@ -43,14 +43,13 @@ function detectWeb(doc, url) { cxpath = getXPath(dispType, 'cxpath1'); tClassObj = doc.evaluate(cxpath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); } - var tClass = tClassObj.textContent; - + var tClass = tClassObj.textContent; if(tClass.match("BIBL")) resultType = "journalArticle"; else if(tClass.match("BOOK")) resultType = "book"; else if(tClass.match("ART")) - resultType = "artwork"; + resultType = "artwork"; var xpath = '//input[@name="pageSize"]'; var eleObj = doc.evaluate(xpath, doc, nsResolver, XPathResult.ANY_TYPE, null); @@ -89,10 +88,9 @@ function doWeb(doc, url) { var nextTitle; var c = 0; - var titles = doc.evaluate(getXPath(dispType,'ti'), doc, nsResolver, XPathResult.ANY_TYPE, null); + var titles = doc.evaluate(getXPath(dispType,'ti'), doc, nsResolver, XPathResult.ANY_TYPE, null); while (nextTitle= titles.iterateNext()) { - c++; - //Zotero.debug(nextTitle.textContent); + c++; titleObj[c] = nextTitle.textContent; } titleObj = Zotero.selectItems(titleObj); @@ -146,8 +144,8 @@ function associateBIBLData(doc,newArticle,t) { } //journal - var journalPath = getXPath(dispType, 'jn', t); - var journalObj = doc.evaluate(journalPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); + var journalPath = getXPath(dispType, 'jn', t); + var journalObj = doc.evaluate(journalPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(journalObj ) { associateFieldData(newArticle, journalObj, 'journalAbbreviation'); } @@ -163,7 +161,7 @@ function associateBIBLData(doc,newArticle,t) { //subject var tagsContent = new Array(); - var suPath = getXPath(dispType, 'su', t); + var suPath = getXPath(dispType, 'su', t); if(suPath != '') { var suObj = doc.evaluate(suPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(suObj) { @@ -234,6 +232,7 @@ function associateBIBLData(doc,newArticle,t) { //note var ntPath = getXPath(dispType, 'nt', t); + Zotero.debug("ntPath : " + ntPath); if(ntPath != '') { var ntObj = doc.evaluate(ntPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(ntObj) { @@ -242,8 +241,7 @@ function associateBIBLData(doc,newArticle,t) { } //date entered - var dtPath = getXPath(dispType, 'der', t); - Zotero.debug(dtPath); + var dtPath = getXPath(dispType, 'der', t); if(dtPath != '') { var dtObj = doc.evaluate(dtPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(dtObj) { @@ -252,8 +250,7 @@ function associateBIBLData(doc,newArticle,t) { } //date updated - var udtPath = getXPath(dispType, 'ud', t); - Zotero.debug(udtPath); + var udtPath = getXPath(dispType, 'ud', t); if(dtPath != '') { var udtObj = doc.evaluate(udtPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(udtObj) { @@ -266,20 +263,18 @@ function associateBIBLData(doc,newArticle,t) { if(pdfLink != '') { var pdfObj = doc.evaluate(pdfLink, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(pdfObj ) { - var pdf = pdfObj.textContent; - Zotero.debug("pdf : " + pdf); + var pdf = pdfObj.textContent; pdfURL =pdf.match(/https?:[/]+([-\w\.]+)+(:\d+)?([/]([\w/_\.]*(\?\S+)?)?)?/); //Zotero.debug("pdfURL :" + pdfURL[0]); } } var snapShotURL=''; - var recid = getXPath(dispType,'recid',t); + var recid = getXPath(dispType,'recid',t); if(recid != '') { var recObj= doc.evaluate(recid, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(recObj) { - - var rec = recObj.value; + var rec = recObj.value; snapShotURL = 'http://' + host + '/hww/jumpstart.jhtml?recid=' + rec + '&fmt=S&DT=full'; //Zotero.debug("snapShotURL :" + snapShotURL ); @@ -378,19 +373,26 @@ function associateBookData( doc, newArticle, t) { } //note - var ntPath = getXPath(dispType, 'nt', t); - Zotero.debug(ntPath); + /*var noteContent = new Array(); + var ntPath = getXPath(dispType, 'nt', t); + Zotero.debug("ntPath : " + ntPath); if(ntPath != '') { var ntObj = doc.evaluate(ntPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(ntObj) { + var notes = ntObj.textContent.split(';'); + for(var i in notes) { + noteContent.push(notes[i]); + } + for (var i=0; i<noteContent.length; i++) { + newArticle.notes[i] = noteContent[i]; + } //associateFieldData(newArticle, ntObj, 'notes'); - newArticle.notes[0] = ntObj.textContent; + //newArticle.notes = ntObj.textContent; } - } + }*/ //date entered - var dtPath = getXPath(dispType, 'der', t); - Zotero.debug(dtPath); + var dtPath = getXPath(dispType, 'der', t); if(dtPath != '') { var dtObj = doc.evaluate(dtPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(dtObj) { @@ -399,8 +401,7 @@ function associateBookData( doc, newArticle, t) { } //date updated - var udtPath = getXPath(dispType, 'ud', t); - Zotero.debug(udtPath); + var udtPath = getXPath(dispType, 'ud', t); if(dtPath != '') { var udtObj = doc.evaluate(udtPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(udtObj) { @@ -409,8 +410,7 @@ function associateBookData( doc, newArticle, t) { } //series - var seriesPath = getXPath(dispType, 'TSN', t); - Zotero.debug(seriesPath ); + var seriesPath = getXPath(dispType, 'TSN', t); if(seriesPath != '') { var seriesObj = doc.evaluate(seriesPath, doc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext(); if(seriesObj) { @@ -456,7 +456,6 @@ function associateBookData( doc, newArticle, t) { } function associateArtData(doc, newArticle,t) { - Zotero.debug("associateData..."); var namespace = doc.documentElement.namespaceURI; var nsResolver = namespace ? function(prefix) { @@ -573,7 +572,7 @@ function associateSourceData(zoteroItem, zoteroObj) { } function associateFieldData(zoteroItem, zoteroObj, zoteroField) { - var fieldValue = zoteroObj.textContent; + var fieldValue = zoteroObj.textContent.replace(/^\s*|\s*$/g, ''); zoteroItem[zoteroField] = fieldValue; //Zotero.debug(zoteroField + " - " + fieldValue); } @@ -590,9 +589,9 @@ function getXPath(dispType,field,p) { switch(field){ - case 'cxpath1' : xPath = '//div[@id="results"]//table[2]//table/@class'; + case 'cxpath1' : xPath = '//div[@id="results"]//table[contains(@class,"rectable")]/tbody/tr/td[2]/table/@class'; break; - case 'cxpath' : xPath = '//div[@id="results"]/table[1]/tbody/tr[1]/td[2]/table/tbody/tr/td/p/@class'; + case 'cxpath' : xPath = '//div[@id="results"]/table[contains(@class,"rectable")]/tbody/tr/td[2]/p/@class'; break; case 'chk' : xPath = '//input[@name="checkbox"][@type="checkbox"]'; break; @@ -600,7 +599,7 @@ function getXPath(dispType,field,p) { break; case 'au': xPath = '//table[@class="rectable"]'+ pos +'//span[contains(@class,"au")]'; break; - case 'jn': xPath = '//table[@class="rectable"]'+ pos +'/tbody/tr/td[2]/table/tbody/tr/td/p/table[1]/tbody/tr/td/span[@class="so"]/span[contains(@class,"jn")]'; + case 'jn': xPath = '//table[@class="rectable"]'+ pos +'//span[contains(@class,"jn")]'; break; case 'so' : xPath = '//table[@class="rectable"]'+ pos +'/tbody/tr/td[2]/table/tbody/tr/td/p/table[1]/tbody/tr/td/span[contains(@class,"so")]'; break;