From 38bb421a5bcc1012ad597f3d076f4de115c7c034 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 16 Feb 2023 17:02:32 +0100 Subject: [PATCH] wip #5741 @0:20 --- app/Fluidbook/Links.php | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/app/Fluidbook/Links.php b/app/Fluidbook/Links.php index a4bb31c9f..6d2d52259 100644 --- a/app/Fluidbook/Links.php +++ b/app/Fluidbook/Links.php @@ -23,6 +23,8 @@ class Links protected static $_testLinkCache = null; protected static $_linksKey = null; + protected static $_webvideoServicesMap=[0=>'youtube',1=>'dailymotion',2=>'vimeo',3=>'brightcove']; + /** * @throws Exception */ @@ -64,7 +66,7 @@ class Links } // Links - self::_correctImageSpecialLinks($links); + self::_fixWebVideoServices($links); $j = 2; foreach ($links as $l) { $i = 1; @@ -174,7 +176,7 @@ class Links $links = Link::encryptLinks($links); } - self::_correctImageSpecialLinks($links); + self::_fixLinks($links); } protected static function _UID($items) @@ -194,6 +196,11 @@ class Links return Str::lower(Str::random(12)); } + protected static function _fixLinks(&$links){ + self::_correctImageSpecialLinks($links); + self::_fixWebVideoServices($links); + } + protected static function _correctImageSpecialLinks(&$links) { foreach ($links as $k => $link) { @@ -211,6 +218,17 @@ class Links } } + protected static function _fixWebVideoServices(&$links) + { + foreach ($links as $k => $link) { + if($link['type']==10){ + if(is_numeric($link['video_service'])){ + $links[$k]['video_service']=self::$_webvideoServicesMap[$link['video_service']]; + } + } + } + } + public static function getLinksFromExcel($xls, &$links, &$rulers) { $s = $xls->setActiveSheetIndexByName('Links'); @@ -266,7 +284,7 @@ class Links $i++; } - self::_correctImageSpecialLinks($links); + self::_fixLinks($links); } public static function getLinksFromAutobookmarkText($txt, &$links, &$rulers) @@ -301,7 +319,7 @@ class Links 'infobulle' => '', 'numerotation' => $numerotation, 'display_area' => '1'); } - self::_correctImageSpecialLinks($links); + self::_fixLinks($links); } public static function saveLinksInFile($book_id, $user_id, $comments, $links, $rulers = [], $specialLinks = [], $specialRulers = []) @@ -381,7 +399,7 @@ class Links $k++; } - self::_correctImageSpecialLinks($finalLinks); + self::_fixLinks($finalLinks); return ['links' => Link::encryptLinks($finalLinks), 'rulers' => array_merge(self::_getAsArray($rulers), self::_getAsArray($specialRulers))]; } -- 2.39.5