From 087a17b43d613247f349671f878936df5cd256e8 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 1 Apr 2021 04:51:55 +0000 Subject: [PATCH] Issue 10105: Use legacy photo data field if used --- src/Model/Attach.php | 10 +++++++--- src/Model/Photo.php | 12 ++++++++---- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/Model/Attach.php b/src/Model/Attach.php index 78928f627d..6182727c97 100644 --- a/src/Model/Attach.php +++ b/src/Model/Attach.php @@ -159,8 +159,12 @@ class Attach */ public static function getData($item) { + if (!empty($item['data'])) { + return $item['data']; + } + $backendClass = DI::storageManager()->getByName($item['backend-class'] ?? ''); - if ($backendClass === null) { + if (empty($backendClass)) { // legacy data storage in 'data' column $i = self::selectFirst(['data'], ['id' => $item['id']]); if ($i === false) { @@ -275,7 +279,7 @@ class Attach foreach($items as $item) { $backend_class = DI::storageManager()->getByName($item['backend-class'] ?? ''); - if ($backend_class !== null) { + if (!empty($backend_class)) { $fields['backend-ref'] = $backend_class->put($img->asString(), $item['backend-ref'] ?? ''); } else { $fields['data'] = $img->asString(); @@ -307,7 +311,7 @@ class Attach foreach($items as $item) { $backend_class = DI::storageManager()->getByName($item['backend-class'] ?? ''); - if ($backend_class !== null) { + if (!empty($backend_class)) { $backend_class->delete($item['backend-ref'] ?? ''); } } diff --git a/src/Model/Photo.php b/src/Model/Photo.php index 7e5accdf35..567a17d5b5 100644 --- a/src/Model/Photo.php +++ b/src/Model/Photo.php @@ -188,8 +188,12 @@ class Photo */ public static function getImageDataForPhoto(array $photo) { + if (!empty($photo['data'])) { + return $photo['data']; + } + $backendClass = DI::storageManager()->getByName($photo['backend-class'] ?? ''); - if ($backendClass === null) { + if (empty($backendClass)) { // legacy data storage in "data" column $i = self::selectFirst(['data'], ['id' => $photo['id']]); if ($i === false) { @@ -308,7 +312,7 @@ class Photo $storage = DI::storage(); } - if ($storage === null) { + if (empty($storage)) { $data = $Image->asString(); } else { $backend_ref = $storage->put($Image->asString(), $backend_ref); @@ -368,7 +372,7 @@ class Photo while ($photo = DBA::fetch($photos)) { $backend_class = DI::storageManager()->getByName($photo['backend-class'] ?? ''); - if ($backend_class !== null) { + if (!empty($backend_class)) { if ($backend_class->delete($photo["backend-ref"] ?? '')) { // Delete the photos after they had been deleted successfully DBA::delete("photo", ['id' => $photo['id']]); @@ -402,7 +406,7 @@ class Photo foreach($photos as $photo) { $backend_class = DI::storageManager()->getByName($photo['backend-class'] ?? ''); - if ($backend_class !== null) { + if (!empty($backend_class)) { $fields["backend-ref"] = $backend_class->put($img->asString(), $photo['backend-ref']); } else { $fields["data"] = $img->asString();