Bug 25969: Don't set itemnumber as reserve->itemnumber
authorNick Clemens <nick@bywatersolutions.com>
Fri, 4 Sep 2020 16:16:27 +0000 (16:16 +0000)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Fri, 18 Sep 2020 08:38:09 +0000 (10:38 +0200)
When a hold is checked in at the wrong destination we revert the found status
For a title level hold this means we return it to a title level hold, with no itemnumber

When we checkin the item we find the hold, but won't set the itemnumber in the hold until it is confirmed

In the script we were setting the itemnumber param, but then setting it again using the reserve itemnumber.
In all conditions before the itemnumber has been set, we don't need to set it again, especially when we do
so incorrectly

To test:
- Log in at Library A
- Place hold on item at Library A, for pickup at Library A
- Check item in at Library A
- Click "Confirm hold"
- Set library to Library B
- Check item in again (try with both the box on reutrns.pl and the box in the header)
- Click "Confirm hold and transfer"
- get error: Can't call method "biblio" on an undefined value at /kohadevbox/koha/circ/returns.pl line 147
- apply patch
- repeat
- success!
- confirm trappings of holds works as normally otherwise too

Signed-off-by: Daniel Gaghan <daniel.gaghan@pueblolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
circ/returns.pl

index 4ffea1e..a7556c7 100755 (executable)
@@ -347,6 +347,7 @@ if ($barcode) {
 }
 $template->param( inputloop => \@inputloop );
 
+
 my $found    = 0;
 my $waiting  = 0;
 my $reserved = 0;
@@ -427,11 +428,9 @@ if ( $messages->{'ResFound'}) {
         if ( $messages->{'transfert'} ) {
             $template->param(
                 itemtitle        => $biblio->title,
-                itemnumber       => $item->itemnumber,
                 itembiblionumber => $biblio->biblionumber,
                 iteminfo         => $biblio->author,
                 diffbranch       => 1,
-                itemnumber       => $itemnumber,
             );
         }
     }
@@ -458,7 +457,6 @@ if ( $messages->{'ResFound'}) {
         patron         => $patron,
         barcode        => $barcode,
         destbranch     => $reserve->{'branchcode'},
-        itemnumber     => $reserve->{'itemnumber'},
         reservenotes   => $reserve->{'reservenotes'},
         reserve_id     => $reserve->{reserve_id},
         bormessagepref => $holdmsgpreferences->{'transports'},