From b7ce00eed0f8d8378ed2e6d5ce39b6d14289d96e Mon Sep 17 00:00:00 2001 From: Cyril Vazquez Date: Wed, 26 Feb 2020 16:22:38 +0100 Subject: [PATCH] FIX #13343 Test ServiceClient instead of Presentation to return contents as handler (to presenter) or base64 contents --- .../recordsManagement/Controller/archiveAccessTrait.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/bundle/recordsManagement/Controller/archiveAccessTrait.php b/src/bundle/recordsManagement/Controller/archiveAccessTrait.php index f2eac5717..f5b4e5a07 100755 --- a/src/bundle/recordsManagement/Controller/archiveAccessTrait.php +++ b/src/bundle/recordsManagement/Controller/archiveAccessTrait.php @@ -554,10 +554,12 @@ trait archiveAccessTrait $binaryDataObject = \laabs::newInstance("recordsManagement/BinaryDataObject"); $binaryDataObject->attachment = new \stdClass(); - if (\laabs::hasPresentation()) { - $binaryDataObject->attachment->data = $digitalResource->getHandler(); - } else { + if (\laabs::isServiceClient()) { + // Returns base64 encoded contents for web service clients $binaryDataObject->attachment->data = base64_encode($digitalResource->getContents()); + } else { + // Let presenter stream the contents + $binaryDataObject->attachment->data = $digitalResource->getHandler(); } $binaryDataObject->attachment->uri = ""; -- GitLab