* @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 PrestaShopBundle\Bridge\Smarty; use Symfony\Component\HttpFoundation\Response; /** * This trait allows rendering smarty template through Symfony response, * therefore it is handy to use it in horizontally migrated controllers. */ trait FrameworkControllerSmartyTrait { /** * Builds Symfony response from provided HTML string using smarty bridge. * * @param string $content HTML string containing everything that needs to be rendered (including the header, footer, notifications etc.) * @param Response|null $response * * @return Response */ public function renderSmarty(string $content, Response $response = null, bool $isNewTheme = false): Response { $controllerBridge = $this->getLegacyControllerBridge(); $controllerBridge->setMedia($isNewTheme); return $this ->get('prestashop.bridge.smarty.smarty_bridge') ->render($content, $this->getControllerConfiguration(), $response) ; } }