From b3ba297615879941e2ff18c3c2a6e8bf5db7cef0 Mon Sep 17 00:00:00 2001 From: Ben Shum Date: Wed, 10 Oct 2012 17:00:54 -0400 Subject: [PATCH] LP1071505 - Add 264 RDA tag to TPAC pubinfo display Prior to this, TPAC only retrieved the 260 tag for publication info. Allow for the possibility that the 264 tag might exist and contain relevant information. Special note: the 264 tag must have a second indicator value of 1 to be meant for publication statement. Also, this only picks out the first 260 or 264 tags in any given bib record. Approach inspired by Dan Scott's approach taken for finding edition statements. Signed-off-by: Ben Shum --- Open-ILS/src/templates/opac/parts/misc_util.tt2 | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Open-ILS/src/templates/opac/parts/misc_util.tt2 b/Open-ILS/src/templates/opac/parts/misc_util.tt2 index 9e2a054d9d..b3901d68ab 100644 --- a/Open-ILS/src/templates/opac/parts/misc_util.tt2 +++ b/Open-ILS/src/templates/opac/parts/misc_util.tt2 @@ -134,19 +134,25 @@ args.title_extended = (args.titles.size) ? args.titles.0 : ''; args.pubplaces = []; - FOR sub IN xml.findnodes('//*[@tag="260"]/*[@code="a"]'); + pubplace_hunt = xml.findnodes('//*[@tag="260"]/*[@code="a"]') || + xml.findnodes('//*[@tag="264" and @ind2="1"]/*[@code="a"]'); + FOR sub IN pubplace_hunt; args.pubplaces.push(sub.textContent); END; args.pubplace = (args.pubplaces.size) ? args.pubplaces.0 : ''; args.publishers = []; - FOR sub IN xml.findnodes('//*[@tag="260"]/*[@code="b"]'); + publishers_hunt = xml.findnodes('//*[@tag="260"]/*[@code="b"]') || + xml.findnodes('//*[@tag="264" and @ind2="1"]/*[@code="b"]'); + FOR sub IN publishers_hunt; args.publishers.push(sub.textContent); END; args.publisher = (args.publishers.size) ? args.publishers.0 : ''; args.pubdates = []; - FOR sub IN xml.findnodes('//*[@tag="260"]/*[@code="c"]'); + pubdates_hunt = xml.findnodes('//*[@tag="260"]/*[@code="c"]') || + xml.findnodes('//*[@tag="264" and @ind2="1"]/*[@code="c"]'); + FOR sub IN pubdates_hunt; args.pubdates.push(sub.textContent); END; args.pubdate = (args.pubdates.size) ? args.pubdates.0 : ''; -- 2.11.0