From b8d045f15ba2e925ed1f6ca42546b59b0ac1319b Mon Sep 17 00:00:00 2001 From: Petro Vashchuk Date: Thu, 31 Mar 2022 13:58:02 +0300 Subject: [PATCH] Bug 30409: barcodedecode() should always trim barcode Barcode is trimmed of leading/trailing whitespaces in many instances before the barcodedecode sub was called. This patch instead makes that barcodedecode sub is going to trim it itself and removes unnecessary, and repetitive code that was used before barcodedecode was called. --- C4/Circulation.pm | 2 ++ circ/circulation.pl | 1 - circ/renew.pl | 1 - circ/returns.pl | 1 - 4 files changed, 2 insertions(+), 3 deletions(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index c6baf4892f..7801bf47a4 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -153,6 +153,7 @@ Will do some manipulation of the barcode for systems that deliver a barcode to circulation.pl that differs from the barcode stored for the item. For proper functioning of this filter, calling the function on the correct barcode string (items.barcode) should return an unaltered barcode. +Barcode is going to be automatically trimmed of leading/trailing whitespaces. The optional $filter argument is to allow for testing or explicit behavior that ignores the System Pref. Valid values are the same as the @@ -164,6 +165,7 @@ System Pref options. # FIXME -- these plugins should be moved out of Circulation.pm # sub barcodedecode { + $barcode =~ s/^\s+|\s+$//g; my ($barcode, $filter) = @_; my $branch = C4::Context::mybranch(); $filter = C4::Context->preference('itemBarcodeInputFilter') unless $filter; diff --git a/circ/circulation.pl b/circ/circulation.pl index ac8ef1e430..c876e41e93 100755 --- a/circ/circulation.pl +++ b/circ/circulation.pl @@ -159,7 +159,6 @@ if (C4::Context->preference("DisplayClearScreenButton")) { } for my $barcode ( @$barcodes ) { - $barcode =~ s/^\s*|\s*$//g; # remove leading/trailing whitespace $barcode = barcodedecode( $barcode ) if $barcode; } diff --git a/circ/renew.pl b/circ/renew.pl index 97b6317067..41c6afe48c 100755 --- a/circ/renew.pl +++ b/circ/renew.pl @@ -43,7 +43,6 @@ my $schema = Koha::Database->new()->schema(); my $barcode = $cgi->param('barcode') // ''; my $unseen = $cgi->param('unseen') || 0; -$barcode =~ s/^\s*|\s*$//g; # remove leading/trailing whitespae $barcode = barcodedecode($barcode) if $barcode; my $override_limit = $cgi->param('override_limit'); my $override_holds = $cgi->param('override_holds'); diff --git a/circ/returns.pl b/circ/returns.pl index f98907187a..84b5248230 100755 --- a/circ/returns.pl +++ b/circ/returns.pl @@ -119,7 +119,6 @@ foreach ( $query->param ) { $counter++; # decode barcode ## Didn't we already decode them before passing them back last time?? - $barcode =~ s/^\s*|\s*$//g; # remove leading/trailing whitespace $barcode = barcodedecode($barcode) if $barcode; ###################### -- 2.31.1