winter/modules/cms/twig/ScriptsNode.php
Luke Towers 77ef563f43 Refactor CMS Twig environment.
Credit to @SeriousKen for the original work in https://github.com/octobercms/october/pull/3575
2022-02-18 01:44:36 -06:00

33 lines
833 B
PHP

<?php namespace Cms\Twig;
use Twig\Node\Node as TwigNode;
use Twig\Compiler as TwigCompiler;
/**
* Represents a "scripts" node
*
* @package winter\wn-cms-module
* @author Alexey Bobkov, Samuel Georges
*/
class ScriptsNode extends TwigNode
{
public function __construct($lineno, $tag = 'scripts')
{
parent::__construct([], [], $lineno, $tag);
}
/**
* Compiles the node to PHP.
*
* @param TwigCompiler $compiler A TwigCompiler instance
*/
public function compile(TwigCompiler $compiler)
{
$compiler
->addDebugInfo($this)
->write("echo \$this->env->getExtension('Cms\Twig\Extension')->assetsFunction(\$context, 'js');\n")
->write("echo \$this->env->getExtension('Cms\Twig\Extension')->displayBlock('scripts');\n")
;
}
}