diff --git a/src/bundle/recordsManagement/Controller/archiveAccessTrait.php b/src/bundle/recordsManagement/Controller/archiveAccessTrait.php index f2eac571761c699a6b8263220be3b1482deac2f4..f5b4e5a070c3e3f381b97b191731e4f6f0274e9f 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 = "";