* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShop\Module\PsxDesign\Traits\Hooks; if (!defined('_PS_VERSION_')) { exit; } use PrestaShop\Module\PsxDesign\Config\PsxDesignConfig; trait UseActionFrontControllerSetMedia { /** * @return void */ public function hookActionFrontControllerSetMedia(): void { $modulePath = $this->getLocalPath(); $moduleFolderName = 'modules/'; $fontsCssSelectorStylesheet = PsxDesignConfig::getHashedStylesheetPathByFileName(PsxDesignConfig::FONTS_CSS_SELECTOR_STYLESHEET_FILE_NAME, $modulePath); if ($fontsCssSelectorStylesheet && file_exists($fontsCssSelectorStylesheet)) { $this->context->controller->registerStylesheet( 'customFontsCss', strstr($fontsCssSelectorStylesheet, $moduleFolderName), [ 'priority' => 70, ] ); } $fontsCssVariableStylesheet = PsxDesignConfig::getHashedStylesheetPathByFileName(PsxDesignConfig::FONTS_CSS_VARIABLE_STYLESHEET_FILE_NAME, $modulePath); if ($fontsCssVariableStylesheet && file_exists($fontsCssVariableStylesheet)) { $this->context->controller->registerStylesheet( 'customVariablesFontsCss', strstr($fontsCssVariableStylesheet, $moduleFolderName), [ 'priority' => 70, ] ); } $colorsCssSelectorStylesheet = PsxDesignConfig::getHashedStylesheetPathByFileName(PsxDesignConfig::COLORS_CSS_SELECTOR_STYLESHEET_FILE_NAME, $modulePath); if ($colorsCssSelectorStylesheet && file_exists($colorsCssSelectorStylesheet)) { $this->context->controller->registerStylesheet( 'customCssSelectorColors', strstr($colorsCssSelectorStylesheet, $moduleFolderName), [ 'priority' => 70, ] ); } $colorsCssVariableStylesheet = PsxDesignConfig::getHashedStylesheetPathByFileName(PsxDesignConfig::COLORS_CSS_VARIABLE_STYLESHEET_FILE_NAME, $modulePath); if ($colorsCssVariableStylesheet && file_exists($colorsCssVariableStylesheet)) { $this->context->controller->registerStylesheet( 'customCssVariablesColors', strstr($colorsCssVariableStylesheet, $moduleFolderName), [ 'priority' => 70, ] ); } $compiledThemeStylesheet = PsxDesignConfig::getHashedStylesheetPathByFileName(PsxDesignConfig::COMPILED_THEME_FILE_NAME, $modulePath); if ($compiledThemeStylesheet && file_exists($compiledThemeStylesheet)) { $this->context->controller->registerStylesheet( 'theme-main', strstr($compiledThemeStylesheet, $moduleFolderName), [ 'priority' => 49, ] ); } } }