Advertisement
Guest User

Untitled

a guest
Oct 18th, 2009
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. --- old_aleph.js 2009-05-01 19:56:34.000000000 +0300
  2. +++ new_aleph.js 2009-05-13 08:42:11.476875000 +0300
  3. -80,9 +80,13 @@
  4. if (prefix == 'x') return namespace; else return null;
  5. } : null;
  6. var nonstandard = false;
  7. + var th = false;
  8. var xpath;
  9. if (newDoc.evaluate('//*[tr[td/text()="LDR"]]/tr[td[2]]', newDoc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext()) {
  10. xpath = '//*[tr[td/text()="LDR"]]/tr[td[2]]';
  11. + } else if (newDoc.evaluate('//*[tr[th/text()="LDR"]]/tr[td[1]]', newDoc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext()) {
  12. + xpath = '//*[tr[th/text()="LDR"]]/tr[td[1]]';
  13. + th = true;
  14. } else if (newDoc.evaluate('//tr[2]//table[2]//tr', newDoc, nsResolver, XPathResult.ANY_TYPE, null).iterateNext()) {
  15. xpath = '//tr[2]//table[2]//tr[td[2]]';
  16. nonstandard = true;
  17. -97,14 +101,18 @@
  18. var elmt;
  19. var record = new marc.record();
  20. while(elmt = elmts.iterateNext()) {
  21. - if (nonstandard) {
  22. - var field = Zotero.Utilities.superCleanString(newDoc.evaluate('./td[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent);
  23. - } else {
  24. - var field = Zotero.Utilities.superCleanString(newDoc.evaluate('./TD[1]/text()[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().nodeValue);
  25. - }
  26. - var field = Zotero.Utilities.superCleanString(newDoc.evaluate('./td[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent);
  27. + if (th) {
  28. + var field = Zotero.Utilities.superCleanString(newDoc.evaluate('./th', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent);
  29. + } else {
  30. + var field = Zotero.Utilities.superCleanString(newDoc.evaluate('./td[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent);
  31. + }
  32. if(field) {
  33. - var value = newDoc.evaluate('./TD[2]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent; //.split(/\n/)[1];
  34. + var value;
  35. + if (th) {
  36. + value = newDoc.evaluate('./TD[1]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent; //.split(/\n/)[1];
  37. + } else {
  38. + value = newDoc.evaluate('./TD[2]', elmt, nsResolver, XPathResult.ANY_TYPE, null).iterateNext().textContent; //.split(/\n/)[1];
  39. + }
  40. if (value.split(/\n/)[1]) value = Zotero.Utilities.trimInternal(value.split(/\n/)[1]);
  41. Zotero.debug(field + " : " + value);
  42. if(field == "LDR") {
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement