From 06e56ec2654c9bc830a9eae8766d53fec25ea220 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Mon, 11 Sep 2023 14:50:19 +0200 Subject: [PATCH] wip #6265 @0:10 --- app/Fluidbook/Link/LinksData.php | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/app/Fluidbook/Link/LinksData.php b/app/Fluidbook/Link/LinksData.php index d0fcf69fe..e470dc3da 100644 --- a/app/Fluidbook/Link/LinksData.php +++ b/app/Fluidbook/Link/LinksData.php @@ -177,24 +177,29 @@ class LinksData } $r = self::_decodegzfile($file); - $meta = array_merge(['version' => 2, 'onepage' => false], self::_decodegzfile($metafile)); + if (is_array($r)) { + $meta = array_merge(['version' => 2, 'onepage' => false], self::_decodegzfile($metafile)); - /** @var FluidbookPublication $fluidbook */ - $fluidbook = FluidbookPublication::withoutGlobalScopes()->find($book_id); - if ($fluidbook->isOnePage() && !$meta['onepage']) { - self::_moveToOnePageLinks($r['links'], $r['rulers'], $fluidbook); - } + /** @var FluidbookPublication $fluidbook */ + $fluidbook = FluidbookPublication::withoutGlobalScopes()->find($book_id); + if ($fluidbook->isOnePage() && !$meta['onepage']) { + self::_moveToOnePageLinks($r['links'], $r['rulers'], $fluidbook); + } - $links = self::_UID($r['links']); - $rulers = self::_UID($r['rulers']); + $links = self::_UID($r['links']); + $rulers = self::_UID($r['rulers']); - if ($forceDecrypt || can('fluidbook-publication:links:edit-animations')) { - $links = Link::decryptLinks($links); + if ($forceDecrypt || can('fluidbook-publication:links:edit-animations')) { + $links = Link::decryptLinks($links); + } else { + $links = Link::encryptLinks($links); + } + + self::_fixLinks($links); } else { - $links = Link::encryptLinks($links); + $links = []; + $rulers = []; } - - self::_fixLinks($links); } protected static function _decodegzfile($file) -- 2.39.5