From 4986e244767d6a49834928640cc900ac41987d6a Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 6 Oct 2023 12:22:04 +0200 Subject: [PATCH] wip #6336 @0.75 --- app/Elearning/QuizCompiler.php | 28 +++++++++++++++++----------- app/Models/QuizTheme.php | 9 +-------- 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/app/Elearning/QuizCompiler.php b/app/Elearning/QuizCompiler.php index b7e5a6f62..a539fc8a7 100644 --- a/app/Elearning/QuizCompiler.php +++ b/app/Elearning/QuizCompiler.php @@ -158,6 +158,9 @@ class QuizCompiler extends Base $this->_addBackgrounds('background'); $this->_addBackgrounds('intro'); + $this->_addBackgrounds('standard'); + $this->_addBackgrounds('draganddropArea1'); + $this->_addBackgrounds('draganddropArea2'); $this->writeSass(); } @@ -166,17 +169,15 @@ class QuizCompiler extends Base { $themePrefix = $themePrefix ?? $dataKey; $sassPrefix = $sassPrefix ?? $dataKey; - $this->data->set($dataKey, 'Image'); - $this->data->set($dataKey . 'ImageMobile', ''); + $this->data->set($dataKey, ''); + $this->data->set($dataKey . 'Mobile', ''); + $dataKeyCustom = trim($dataKey, '12') . 'Custom'; + $custom = $this->theme->$dataKeyCustom; - if ($this->theme->{$dataKey . 'Custom'}) { + if ($custom) { $this->_addBackgroundVariables($sassPrefix . '-desktop', $themePrefix, $dataKey); - if ($this->theme->{$dataKey . 'CustomMobile'}) { - $this->_addBackgroundVariables($sassPrefix . '-mobile', $themePrefix, $dataKey . 'Mobile', 'Mobile'); - } else { - $this->_addBackgroundVariables($sassPrefix . '-mobile', $themePrefix, $dataKey . 'Mobile'); - } + $this->_addBackgroundVariables($sassPrefix . '-mobile', $themePrefix, $dataKey . 'Mobile', 'Mobile'); } } @@ -184,9 +185,14 @@ class QuizCompiler extends Base { $i = $this->data['theme']->{$themePrefix . 'Image' . $themeSuffix}; - $this->data->set($dataKey, $i); - if (stristr($i, '.json')) { - $this->animations[$i] = file_get_contents($this->theme->getPageData()->getImageFile($themePrefix . 'Image' . $themeSuffix)); + if ($i) { + $file = $this->theme->getPageData()->getImageFile($themePrefix . 'Image' . $themeSuffix); + if ($file && file_exists($file)) { + $this->data->set($dataKey, $i); + if (stristr($i, '.json')) { + $this->animations[$i] = file_get_contents($this->theme->getPageData()->getImageFile($themePrefix . 'Image' . $themeSuffix)); + } + } } } diff --git a/app/Models/QuizTheme.php b/app/Models/QuizTheme.php index bb1d48e6f..02ce2db9c 100644 --- a/app/Models/QuizTheme.php +++ b/app/Models/QuizTheme.php @@ -89,15 +89,8 @@ class QuizTheme extends ToolboxModel $this->addField('', FormSeparator::class); $this->addField('backgroundCustom', Checkbox::class, __('Définir un fond personnalisé ou animé')); $this->addField('backgroundImage', FluidbookThemeImage::class, __('Image ou animation'), ['hint' => __('Taille recommandée : :size', ['size' => '1200 x 680px']), 'when' => ['backgroundCustom' => 1]]); -// $this->addField('backgroundSize', ThemeBackgroundSize::class, __('Affichage du fond'), ['when' => ['backgroundCustom' => 1]]); -// $this->addField('backgroundHorizontalAlign', HorizontalAlign::class, __('Alignement horizontal'), ['when' => ['backgroundCustom' => 1]]); -// $this->addField('backgroundVerticalAlign', VerticalAlign::class, __('Alignement vertical'), ['when' => ['backgroundCustom' => 1]]); $this->addField('', FormSeparator::class, '', ['when' => ['backgroundCustom' => 1]]); - $this->addField('backgroundCustomMobile', Checkbox::class, __('Définir un fond spécifique sur mobile'), ['when' => ['backgroundCustom' => 1]]); - $this->addField('backgroundImageMobile', FluidbookThemeImage::class, __('Image ou animation'), ['hint' => __('Taille recommandée : :size', ['size' => '390 x 844px']), 'when' => ['backgroundCustom' => 1, 'backgroundCustomMobile' => 1]]); -// $this->addField('backgroundSizeMobile', ThemeBackgroundSize::class, __('Affichage du fond'), ['when' => ['backgroundCustom' => 1, 'backgroundCustomMobile' => 1]]); -// $this->addField('backgroundHorizontalAlignMobile', HorizontalAlign::class, __('Alignement horizontal'), ['when' => ['backgroundCustom' => 1, 'backgroundCustomMobile' => 1]]); -// $this->addField('backgroundVerticalAlignMobile', VerticalAlign::class, __('Alignement vertical'), ['when' => ['backgroundCustom' => 1, 'backgroundCustomMobile' => 1]]); + $this->addField('backgroundImageMobile', FluidbookThemeImage::class, __('Image ou animation'), ['hint' => __('Taille recommandée : :size', ['size' => '390 x 844px']), 'when' => ['backgroundCustom' => 1]]); } -- 2.39.5