From 8d5176508fef1df4acb49fce342173e80a4ec11b Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 7 Aug 2018 17:06:41 -0300 Subject: [PATCH] Bug 21172: Remove warning from addbiblio.pl Argument "01e" isn't numeric in numeric ne (!=) at /home/vagrant/kohaclone/cataloguing/addbiblio.pl line 507. A tagfield can be 01e and so raise a warning is compared with == or != This patch also fixes few inconsistencies: - tagfield for items.itemnumber must be retrieved with GetMarcFromKohaField (to support other marcflavours) - do not use $_ - loop only once on $usedTagsLib Test plan: For devs only, read the code and confirm the changes make sense. --- cataloguing/addbiblio.pl | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/cataloguing/addbiblio.pl b/cataloguing/addbiblio.pl index 75db4644cd..284532fe58 100755 --- a/cataloguing/addbiblio.pl +++ b/cataloguing/addbiblio.pl @@ -496,16 +496,19 @@ sub build_tabs { my @BIG_LOOP; my %seen; my @tab_data; # all tags to display - + + my $max_num_tab=-1; + my ( $itemtag, $itemsubfield ) = GetMarcFromKohaField( "items.itemnumber", scalar $input->param('frameworkcode') ); foreach my $used ( @$usedTagsLib ){ + push @tab_data,$used->{tagfield} if not $seen{$used->{tagfield}}; $seen{$used->{tagfield}}++; - } - - my $max_num_tab=-1; - foreach(@$usedTagsLib){ - if($_->{tab} > -1 && $_->{tab} >= $max_num_tab && $_->{tagfield} != '995'){ # FIXME : MARC21 ? - $max_num_tab = $_->{tab}; + + if ( $used->{tab} > -1 + && $used->{tab} >= $max_num_tab + && $used->{tagfield} ne $itemtag ) + { + $max_num_tab = $used->{tab}; } } if($max_num_tab >= 9){ -- 2.11.0