Bug 22735: Resolve internal server error on missing item type
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Fri, 19 Apr 2019 06:49:48 +0000 (06:49 +0000)
committerNick Clemens <nick@bywatersolutions.com>
Wed, 24 Apr 2019 10:36:30 +0000 (10:36 +0000)
Trivial fix, similar to opac-detail, applied to ISBD and MARC detail.

Test plan:
Enable ArticleRequests pref.
Make sure you have a biblio with no item type in 942c. (Perhaps you need to
make 942c not mandatory temporarily and save a biblio record without this
field being filled.)
If you are logged in, log out.
Go to MARC or ISBD detail page. No crash anymore?

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

opac/opac-ISBDdetail.pl
opac/opac-MARCdetail.pl

index ed39f72..50d08b3 100755 (executable)
@@ -226,9 +226,12 @@ if (my $search_for_title = C4::Context->preference('OPACSearchForTitleIn')){
 }
 
 if( C4::Context->preference('ArticleRequests') ) {
+    my $itemtype = Koha::ItemTypes->find($biblio->itemtype);
     my $artreqpossible = $patron
         ? $biblio->can_article_request( $patron )
-        : Koha::ItemTypes->find($biblio->itemtype)->may_article_request;
+        : $itemtype
+        ? $itemtype->may_article_request
+        : q{};
     $template->param( artreqpossible => $artreqpossible );
 }
 
index 4867eda..dd70900 100755 (executable)
@@ -351,9 +351,12 @@ if (my $search_for_title = C4::Context->preference('OPACSearchForTitleIn')){
 }
 
 if( C4::Context->preference('ArticleRequests') ) {
+    my $itemtype = Koha::ItemTypes->find($biblio->itemtype);
     my $artreqpossible = $patron
         ? $biblio->can_article_request( $patron )
-        : Koha::ItemTypes->find($biblio->itemtype)->may_article_request;
+        : $itemtype
+        ? $itemtype->may_article_request
+        : q{};
     $template->param( artreqpossible => $artreqpossible );
 }