Merge branch 'feature/is_themecore-PS9'
This commit is contained in:
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
|
||||||
|
is_themecore/vendor/
|
||||||
@ -4,6 +4,7 @@ namespace Oksydan\Module\IsThemeCore\Core\Smarty;
|
|||||||
|
|
||||||
use Oksydan\Module\IsThemeCore\Core\Webp\WebpPictureGenerator;
|
use Oksydan\Module\IsThemeCore\Core\Webp\WebpPictureGenerator;
|
||||||
use Oksydan\Module\IsThemeCore\Form\Settings\WebpConfiguration;
|
use Oksydan\Module\IsThemeCore\Form\Settings\WebpConfiguration;
|
||||||
|
use PrestaShop\PrestaShop\Core\Util\ColorBrightnessCalculator;
|
||||||
|
|
||||||
class SmartyHelperFunctions
|
class SmartyHelperFunctions
|
||||||
{
|
{
|
||||||
@ -189,4 +190,9 @@ class SmartyHelperFunctions
|
|||||||
|
|
||||||
return $content;
|
return $content;
|
||||||
}
|
}
|
||||||
|
public static function isBright($hexColor)
|
||||||
|
{
|
||||||
|
$calculator = new ColorBrightnessCalculator();
|
||||||
|
return $calculator->isBright($hexColor);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,14 +8,53 @@ class Smarty extends AbstractHook
|
|||||||
'actionDispatcherBefore',
|
'actionDispatcherBefore',
|
||||||
];
|
];
|
||||||
|
|
||||||
public function hookActionDispatcherBefore(): void
|
public function hookActionDispatcherBefore(): void
|
||||||
{
|
{
|
||||||
$this->context->smarty->registerPlugin('function', 'generateImagesSources', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'generateImagesSources']);
|
if (!isset($this->context->smarty->registered_plugins['function']['generateImagesSources'])) {
|
||||||
$this->context->smarty->registerPlugin('function', 'generateImageSvgPlaceholder', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'generateImageSvgPlaceholder']);
|
$this->context->smarty->registerPlugin('function', 'generateImagesSources', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'generateImagesSources']);
|
||||||
$this->context->smarty->registerPlugin('function', 'appendParamToUrl', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'appendParamToUrl']);
|
} else {
|
||||||
$this->context->smarty->registerPlugin('block', 'images_block', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'imagesBlock']);
|
return;
|
||||||
$this->context->smarty->registerPlugin('block', 'cms_images_block', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'cmsImagesBlock']);
|
}
|
||||||
$this->context->smarty->registerPlugin('block', 'display_mobile', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'displayMobileBlock']);
|
|
||||||
$this->context->smarty->registerPlugin('block', 'display_desktop', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'displayDesktopBlock']);
|
if (!isset($this->context->smarty->registered_plugins['function']['generateImageSvgPlaceholder'])) {
|
||||||
|
$this->context->smarty->registerPlugin('function', 'generateImageSvgPlaceholder', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'generateImageSvgPlaceholder']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['function']['appendParamToUrl'])) {
|
||||||
|
$this->context->smarty->registerPlugin('function', 'appendParamToUrl', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'appendParamToUrl']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['block']['images_block'])) {
|
||||||
|
$this->context->smarty->registerPlugin('block', 'images_block', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'imagesBlock']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['block']['cms_images_block'])) {
|
||||||
|
$this->context->smarty->registerPlugin('block', 'cms_images_block', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'cmsImagesBlock']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['block']['display_mobile'])) {
|
||||||
|
$this->context->smarty->registerPlugin('block', 'display_mobile', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'displayMobileBlock']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['block']['display_desktop'])) {
|
||||||
|
$this->context->smarty->registerPlugin('block', 'display_desktop', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'displayDesktopBlock']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!isset($this->context->smarty->registered_plugins['modifier']['is_bright'])) {
|
||||||
|
$this->context->smarty->registerPlugin('modifier', 'is_bright', ['Oksydan\Module\IsThemeCore\Core\Smarty\SmartyHelperFunctions', 'isBright']);
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user