From dd8d1347f91ac16a34d4674d86055b1e8875c9a8 Mon Sep 17 00:00:00 2001 From: Julian Maurice Date: Thu, 24 Jul 2014 11:23:25 +0200 Subject: [PATCH] Bug 12670: Show materials label instead of code In catalogue/detail.pl, if items.materials is linked to an authorised values list, show label instead of code. Test plan: 1/ Create an authorised values list 'MATERIALS' with some values 2/ In default MARC biblio framework, link an item subfield to 'items.materials', and to the AV list 'MATERIALS' 3/ Edit an item and give a value for this subfield 4/ Go to biblio record detail page (catalogue/detail.pl) 5/ In the items table, the authorised value label should be displayed. Signed-off-by: Nick Clemens Signed-off-by: Katrin Fischer Signed-off-by: Brendan A Gallagher --- catalogue/detail.pl | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/catalogue/detail.pl b/catalogue/detail.pl index e971ce7928..c4afb62f03 100755 --- a/catalogue/detail.pl +++ b/catalogue/detail.pl @@ -189,6 +189,17 @@ my $norequests = 1; my $authvalcode_items_itemlost = GetAuthValCode('items.itemlost',$fw); my $authvalcode_items_damaged = GetAuthValCode('items.damaged', $fw); +my $materials_authvalcode = GetAuthValCode('items.materials', $fw); +my %materials_map; +if ($materials_authvalcode) { + my $materials_authvals = GetAuthorisedValues($materials_authvalcode); + if ($materials_authvals) { + foreach my $value (@$materials_authvals) { + $materials_map{$value->{authorised_value}} = $value->{lib}; + } + } +} + my $analytics_flag; my $materials_flag; # set this if the items have anything in the materials field my $currentbranch = C4::Context->userenv ? C4::Context->userenv->{branch} : undef; @@ -275,7 +286,10 @@ foreach my $item (@items) { } if (defined($item->{'materials'}) && $item->{'materials'} =~ /\S/){ - $materials_flag = 1; + $materials_flag = 1; + if (defined $materials_map{ $item->{materials} }) { + $item->{materials} = $materials_map{ $item->{materials} }; + } } if ( C4::Context->preference('UseCourseReserves') ) { -- 2.39.2