From 65dfc599bc96e15e0b82cd8e027ed59bce2e10fc Mon Sep 17 00:00:00 2001 From: Lucas Gass Date: Fri, 13 Dec 2024 16:27:51 +0000 Subject: [PATCH] Bug 38452: Use lc() for case insensitivity To test: 1. Create an item give it a barcode like 'abc123'; 2. Try creating a 2nd item with a barcode: 'ABC123', you get an error 'Error saving item: Barcode must be unique.' 3. Checkin the item 'ABC123', the 'abc123' item successfully checks in. 4. The case doesn't seem to matter elsewhere in Koha ( check-in, checkout, searching, batch tools ) 5. Try the inventory tool and use 'ABC123'. The barcode is not found. 6. APPLY PATCH, restart_all 7. Try the inventory tool again with both 'abc123' and 'ABC123', they should now both work. Signed-off-by: David Nind --- tools/inventory.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/inventory.pl b/tools/inventory.pl index 1c94183596..5af54cadb6 100755 --- a/tools/inventory.pl +++ b/tools/inventory.pl @@ -216,9 +216,9 @@ if ( $op eq 'cud-inventory' err_data => $err_data ); } my @items = Koha::Items->search( { barcode => { -in => \@barcodes } } )->as_list; - my %items = map { $_->barcode => $_ } @items; + my %items = map { lc($_->barcode) => $_ } @items; foreach my $barcode (@barcodes) { - my $item = $items{ $barcode }; + my $item = $items{ lc($barcode) }; if ( $item ) { if ( $item->withdrawn ) { push @errorloop, { 'barcode' => $barcode, 'ERR_WTHDRAWN' => 1 }; -- 2.39.5