From c76b6a148b85b27ec0d3c4bea1f78ab30d3df72f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fr=C3=A9d=C3=A9ric=20Demians?= Date: Tue, 26 May 2015 18:23:11 +0200 Subject: [PATCH] Bug 13904: Make unimarc_field_4XX displays usefull 200 subfield data When searching for multivolumes titles, UNIMARC 4xx field plugin displays the title of the biblios (200$a), without giving info about volumes (200 $h $i). It neither doesn't display $e (subtitle) info which could greatly help to disambiguate search result. The displayed title is supposed to link to a biblio record view (MARC / normal). It doesn't work. TO TEST: - On a UNIMARC Koha, add a new biblio record - Call the 4XX plugin from 461/463 field - Search for a biblio record which contains 200$e, and/or 200$h and/or 200$i subfields. - You get a result list, with two issues: 1. $a, $h & $i aren't displayed 2. Biblio title is not a link - Apply the patch, and repeat previous steps. Signed-off-by: Bernardo Gonzalez Kriegel I got a link on fulltitle, but in 'ahie' order (not aehi) Fixed some tabs. Signed-off-by: Jonathan Druart Signed-off-by: Tomas Cohen Arazi --- cataloguing/value_builder/unimarc_field_4XX.pl | 8 ++++++++ .../cataloguing/value_builder/unimarc_field_4XX.tt | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/cataloguing/value_builder/unimarc_field_4XX.pl b/cataloguing/value_builder/unimarc_field_4XX.pl index 5ab5bf1a12..56b5e14866 100755 --- a/cataloguing/value_builder/unimarc_field_4XX.pl +++ b/cataloguing/value_builder/unimarc_field_4XX.pl @@ -378,7 +378,15 @@ sub plugin { ) { my $record = C4::Search::new_record_from_zebra( 'biblioserver', $results->[$i] ); + next unless $record; my $rechash = TransformMarcToKoha( $dbh, $record ); + if ( my $f = $record->field('200') ) { + $rechash->{fulltitle} = + join(', ', map { $_->[1] } grep { $_->[0] =~ /[aehi]/ } $f->subfields() ); + } + else { + $rechash->{fulltitle} = $rechash->{title}; + } my $pos; my $countitems; if ( $rechash->{itemnumber} ) { diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tt index 66d5223903..447257ae5b 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tt @@ -167,9 +167,9 @@ [% IF ( resul.even ) %] [% ELSE %][% END %] [% IF ( resul.MARC_ON ) %] - [% resul.title |html %] + [% resul.title |html %] [% ELSE %] - [% resul.title |html %] [% END %] + [% resul.fulltitle |html %][% END %]

[% resul.author |html %] [% IF ( resul.publishercode ) %]- [% resul.publishercode |html %][% END %] [% IF ( resul.place ) %] ; [% resul.place |html %][% END %] -- 2.39.5