From 06ac03a9dcdc652ae7ce7d32ae89bf76ebd75806 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 31 Jul 2025 17:19:53 +0200 Subject: [PATCH] wait #7661 @1 --- app/Console/Commands/SCORMCloseForHemsley.php | 35 +++++++++++++++++++ app/Fluidbook/Link/LinksData.php | 2 +- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 app/Console/Commands/SCORMCloseForHemsley.php diff --git a/app/Console/Commands/SCORMCloseForHemsley.php b/app/Console/Commands/SCORMCloseForHemsley.php new file mode 100644 index 000000000..a2b0fc4be --- /dev/null +++ b/app/Console/Commands/SCORMCloseForHemsley.php @@ -0,0 +1,35 @@ +where('c_title', 'LIKE', 'Hemsley\ Fraser\ -%')->get(); + + $changed = 0; + foreach ($fluidbooks as $fluidbook) { + /** @var $fluidbook FluidbookPublication */ + $fluidbook->getLinksAndRulers($links, $rulers, 'latest', true); + $change = false; + foreach ($links as $id => $link) { + if (trim($link['to'], ' ;') === 'javascript:scormComplete()') { + $change = true; + $links[$id]['to'] = 'javascript:scormCompleteAndClose();'; + } + } + if ($change) { + LinksData::saveLinksInFile($fluidbook->id, 0, 'Automatic change of scormComplete() function (see details in ticket #7661)', $links, $rulers); + $changed++; + } + } + $this->line($changed . ' fluidbooks altered'); + } +} diff --git a/app/Fluidbook/Link/LinksData.php b/app/Fluidbook/Link/LinksData.php index 95ca34a37..ff7725d66 100644 --- a/app/Fluidbook/Link/LinksData.php +++ b/app/Fluidbook/Link/LinksData.php @@ -295,7 +295,7 @@ class LinksData protected static function _fixV2TooltipLinks(&$links) { foreach ($links as $k => $link) { - if ($link['type'] == Link::TOOLTIP && (!$link['inline'] || $link['inline'] === 'popup')) { + if ($link['type'] == Link::TOOLTIP && (!isset($link['inline']) || !$link['inline'] || $link['inline'] === 'popup')) { $links[$k]['type'] = Link::TEXT_POPUP; $links[$k]['to'] = $link['infobulle']; $links[$k]['infobulle'] = $links[$k]['tooltip'] = ''; -- 2.39.5