From 9e66831fcfc264067df0c8d24bc50a8b8981fd39 Mon Sep 17 00:00:00 2001 From: Andrii Veremeienko Date: Fri, 29 Oct 2021 16:44:19 +0300 Subject: [PATCH] Bug 29114: Trim whitespace before the barcode The solution was to add regexp that trims all whitespaces. How to test: 1. Go to the koha/virtualshelves/shelves.pl; 2. Add new list or edit existing one; 3. Start adding new items; 4. In the "Barcode" field add barcode(s) with whitespaces before them; 5. Observe that it wasn't added as the barcode isn't recognized because of whitespaces; 6. Apply the patch; 7. Repeat step 4; 8. Observe that the item was successfully added; Signed-off-by: David Nind --- virtualshelves/shelves.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/virtualshelves/shelves.pl b/virtualshelves/shelves.pl index a722326ad0..66947f925b 100755 --- a/virtualshelves/shelves.pl +++ b/virtualshelves/shelves.pl @@ -21,6 +21,7 @@ use Modern::Perl; use CGI qw ( -utf8 ); use C4::Auth qw( get_template_and_user ); use C4::Biblio qw( GetMarcBiblio ); +use C4::Circulation qw( barcodedecode ); use C4::Koha qw( GetNormalizedEAN GetNormalizedISBN @@ -157,7 +158,7 @@ if ( $op eq 'add_form' ) { if ( $shelf->can_biblios_be_added( $loggedinuser ) ) { my @barcodes = split /\n/, $barcodes; # Entries are effectively passed in as a separated list foreach my $barcode (@barcodes){ - $barcode =~ s/\r$//; # strip any naughty return chars + $barcode = barcodedecode( $barcode ) if $barcode; next if $barcode eq ''; my $item = Koha::Items->find({barcode => $barcode}); if ( $item ) { -- 2.30.2