From 70d76b737c526551b5398ab2798f89e9334e55c5 Mon Sep 17 00:00:00 2001 From: Robert Lange <robert.lange@uni-leipzig.de> Date: Wed, 17 Jun 2020 11:04:51 +0200 Subject: [PATCH] refs #17811 [fid] handle empty publication details in OrderHydrator * prevent notices when publication details are empty * prevent fidis notice / error when issn in getPublishedIn is null ** set array with empty string instead --- module/fid/src/Hydrator/OrderHydrator.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/module/fid/src/Hydrator/OrderHydrator.php b/module/fid/src/Hydrator/OrderHydrator.php index 9edb7e79d93..ba97e3975c2 100644 --- a/module/fid/src/Hydrator/OrderHydrator.php +++ b/module/fid/src/Hydrator/OrderHydrator.php @@ -32,7 +32,8 @@ class OrderHydrator extends AbstractHydrator { /* Collect needed record data */ $id = $driver->tryMethod('getUniqueID'); $title = $driver->tryMethod('getTitle'); - $publicationDetails = $this->toArray( $driver->tryMethod('getPublicationDetails')[0] ); + $pdetails = $driver->tryMethod('getPublicationDetails'); + $publicationDetails = $this->toArray(!empty($pdetails) ? $pdetails[0] : null); $authors = $driver->tryMethod('getDeduplicatedAuthors'); $primaryAuthor = $driver->tryMethod('getPrimaryAuthor'); $secondaryAuthors = $driver->tryMethod('getSecondaryAuthors'); @@ -49,6 +50,10 @@ class OrderHydrator extends AbstractHydrator { ? $publishedIn['issue'] : implode(', ', $publishedIn['issue']); } + if (empty($publishedIn['issns'])) { + $publishedIn['issns'] = [""]; + } + $record = compact( 'id', 'title', -- GitLab