LP 1779467: Fix Error When Marking Item on Hold as Discard/Weed
authorJason Stephenson <jason@sigio.com>
Mon, 12 Nov 2018 14:17:11 +0000 (09:17 -0500)
committerChris Sharp <csharp@georgialibraries.org>
Wed, 31 Jul 2019 15:33:48 +0000 (11:33 -0400)
Fix the following error when marking an on-hold item as Discard/Weed:

Can't use an undefined value as an ARRAY reference at
/usr/local/share/perl/5.18.2/OpenILS/Application/Circ.pm line 1393.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
LP#1779467: Fix 'Dicard' typo

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm
Open-ILS/src/templates/staff/circ/share/circ_strings.tt2

index f3cec22..0dfebd3 100644 (file)
@@ -1376,21 +1376,21 @@ sub mark_item {
     return $evt if $evt;
 
     # Retrieving holds for later use.
     return $evt if $evt;
 
     # Retrieving holds for later use.
-    my $holds = $e->search_action_hold_request(
+    my $holds = $e->search_action_hold_request([
         {
             current_copy => $copy->id,
             fulfillment_time => undef,
             cancel_time => undef,
         },
         {flesh=>1, flesh_fields=>{ahr=>['eligible_copies']}}
         {
             current_copy => $copy->id,
             fulfillment_time => undef,
             cancel_time => undef,
         },
         {flesh=>1, flesh_fields=>{ahr=>['eligible_copies']}}
-    );
+    ]);
 
     # Throw event if attempting to  mark discard the only copy to fill a hold.
     if ($self->api_name =~ /discard/) {
         if (!$args->{handle_last_hold_copy}) {
             for my $hold (@$holds) {
                 my $eligible = $hold->eligible_copies();
 
     # Throw event if attempting to  mark discard the only copy to fill a hold.
     if ($self->api_name =~ /discard/) {
         if (!$args->{handle_last_hold_copy}) {
             for my $hold (@$holds) {
                 my $eligible = $hold->eligible_copies();
-                if (scalar(@{$eligible}) < 2) {
+                if (!defined($eligible) || scalar(@{$eligible}) < 2) {
                     $evt = OpenILS::Event->new('ITEM_TO_MARK_LAST_HOLD_COPY');
                     last;
                 }
                     $evt = OpenILS::Event->new('ITEM_TO_MARK_LAST_HOLD_COPY');
                     last;
                 }
index e5b1e1b..5e40fb5 100644 (file)
@@ -27,7 +27,7 @@ s.LOCATION_ALERT_MSG =
     "{{copy.barcode()}}","{{copy.location().name()}}") %]';
 s.MARK_DAMAGED_CONFIRM = '[% l("Mark {{num_items}} items as DAMAGED?") %]';
 s.MARK_MISSING_CONFIRM = '[% l("Mark {{num_items}} items as MISSING?") %]';
     "{{copy.barcode()}}","{{copy.location().name()}}") %]';
 s.MARK_DAMAGED_CONFIRM = '[% l("Mark {{num_items}} items as DAMAGED?") %]';
 s.MARK_MISSING_CONFIRM = '[% l("Mark {{num_items}} items as MISSING?") %]';
-s.MARK_DISCARD_CONFIRM = '[% l("Mark {{num_items}} items as DICARD/WEED?") %]';
+s.MARK_DISCARD_CONFIRM = '[% l("Mark {{num_items}} items as DISCARD/WEED?") %]';
 s.MARK_ITEM_CHECKED_OUT = '[% l("Item {{barcode}} is checked out.") %]';
 s.MARK_ITEM_IN_TRANSIT = '[% l("Item {{barcode}} is in transit.") %]';
 s.MARK_ITEM_RESTRICT_DELETE = '[% l("Item {{barcode}} is in a status with a copy delete warning.") %]';
 s.MARK_ITEM_CHECKED_OUT = '[% l("Item {{barcode}} is checked out.") %]';
 s.MARK_ITEM_IN_TRANSIT = '[% l("Item {{barcode}} is in transit.") %]';
 s.MARK_ITEM_RESTRICT_DELETE = '[% l("Item {{barcode}} is in a status with a copy delete warning.") %]';