LP1618199_Prefer ISBN13 as LI identifier
authorTiffany Little <tlittle@georgialibraries.org>
Mon, 27 Mar 2023 19:42:07 +0000 (15:42 -0400)
committerTiffany Little <tlittle@georgialibraries.org>
Mon, 27 Mar 2023 19:42:07 +0000 (15:42 -0400)
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem.pm

index 011d7e0..063386b 100644 (file)
@@ -296,9 +296,13 @@ sub set_default_order_ident {
     if (grep {$_->order_ident eq 't'} @{$li->attributes}) { return ; }
 
     # Caller wants us to apply a default order identifier
-    # Use the first ISBN as the default.
+    # If there's an ISBN13, use that first
 
-    my ($attr) = grep {$_->attr_name eq 'isbn'} @{$li->attributes};
+  ($attr) = grep { 
+        $_->attr_name eq 'isbn' and 
+        $_->attr_type eq 'lineitem_marc_attr_definition' and
+        length($_->attr_value) == 13
+    } @$attrs;
 
     if (!$attr) { return; }