From 68c44093a414dac6ac1319c03b6dee0d152f24cd Mon Sep 17 00:00:00 2001 From: Janusz Kaczmarek Date: Thu, 14 Mar 2013 17:25:40 +0200 Subject: [PATCH] Bug 10335: display translated forms of headings in UNIMARC authorities correctly MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit To reproduce and test: To reproduce: 1) Create an authority record with main heading (100) in Latin script (e.g. Oppenheimer, Aharon -- subfields $a and $b) and parallel form (700) in Hebrew (אופנהיימר, אהרן -- subfields $a and $b). Mark it correctly in $8 with freheb (or engheb if you like); 2) Reindex and search; 3) You will see: Oppenheimer Aharon freheb: אופנהיימר Whereas you would rather like to see (mind language and lack of $b above): Oppenheimer, Aharon Hebrew: אופנהיימר, אהרן The patch corrects the issue and should not harm those who (improperly) put only one triple in $8 Signed-off-by: Bernardo Gonzalez Kriegel Work as described. No koha-qa errors. Same result on OPAC and STAFF Turns out that test plan is wrong, you neet to fill tag 200ab, not 100ab, for main heading. I filled 100a with some example data from UNIMARC auth manual. Signed-off-by: Katrin Fischer Took me a bit to figure it out, works according to test plan. Signed-off-by: Galen Charlton --- C4/AuthoritiesMarc.pm | 4 ++-- .../prog/en/includes/authorities-search-results.inc | 12 ++++++++++++ .../prog/en/includes/authorities-search-results.inc | 17 +++++++++++++++++ 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/C4/AuthoritiesMarc.pm b/C4/AuthoritiesMarc.pm index 9ea3b2dbb9..010fad7c78 100644 --- a/C4/AuthoritiesMarc.pm +++ b/C4/AuthoritiesMarc.pm @@ -979,8 +979,8 @@ sub BuildSummary { # Other forms @otherscript = map { { - lang => $_->subfield('8') || '', - term => $_->subfield('a'), + lang => length ($_->subfield('8')) == 6 ? substr ($_->subfield('8'), 3, 3) : $_->subfield('8') || '', + term => $_->subfield('a') . ($_->subfield('b') ? ', ' . $_->subfield('b') : ''), direction => 'ltr', field => $_->tag, } } $record->field('7..'); diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-search-results.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-search-results.inc index 366c695296..2ee4571021 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-search-results.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-search-results.inc @@ -44,6 +44,14 @@ [% END %] [% END %] + [% IF summary.seefrom %] +
+ [% FOREACH see IN summary.seefrom %] + [% PROCESS showreference heading=see.heading label="" type=see.type search='' %] + [% IF ! loop.last %] ; [% END %] + [% END %] +
+ [% END %] [% IF summary.seealso %]
[% FOREACH see IN summary.seealso %] @@ -87,6 +95,10 @@ [% CASE ['it', 'ita'] %]Italian [% CASE ['de', 'ger', 'deu'] %]German [% CASE ['es', 'spa'] %]Spanish + [% CASE ['heb'] %]Hebrew + [% CASE ['ara'] %]Arabic + [% CASE ['gre'] %]Greek (modern) + [% CASE ['grc'] %]Greek (to 1453) [% CASE %][% lang %] [% END %] [% END %] diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/authorities-search-results.inc b/koha-tmpl/opac-tmpl/prog/en/includes/authorities-search-results.inc index b113049c24..ea2aa168ae 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/authorities-search-results.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/authorities-search-results.inc @@ -47,6 +47,14 @@ [% END %]
[% END %] + [% IF summary.seefrom %] +
+ [% FOREACH see IN summary.seefrom %] + [% PROCESS showreference heading=see.heading label="" type=see.type search='' %] + [% IF ! loop.last %] ; [% END %] + [% END %] +
+ [% END %] [% IF summary.seealso %]
[% FOREACH see IN summary.seealso %] @@ -82,3 +90,12 @@ [% END %] [% END %] [% END %] +[% BLOCK language %] + [% SWITCH lang %] + [% CASE ['heb'] %]Hebrew + [% CASE ['ara'] %]Arabic + [% CASE ['gre'] %]Greek (modern) + [% CASE ['grc'] %]Greek (to 1453) + [% CASE %][% lang %] + [% END %] +[% END %] -- 2.11.4.GIT