|
@@ -13,6 +13,7 @@ namespace Symfony\Bundle\AsseticBundle\Factory;
|
|
|
|
|
|
use Assetic\Factory\AssetFactory as BaseAssetFactory;
|
|
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
|
|
+use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
|
|
|
use Symfony\Component\HttpKernel\KernelInterface;
|
|
|
|
|
|
/**
|
|
@@ -24,31 +25,36 @@ class AssetFactory extends BaseAssetFactory
|
|
|
{
|
|
|
private $kernel;
|
|
|
private $container;
|
|
|
+ private $parameterBag;
|
|
|
|
|
|
/**
|
|
|
* Constructor.
|
|
|
*
|
|
|
- * @param KernelInterface $kernel The kernel is used to parse bundle notation
|
|
|
- * @param ContainerInterface $container The container is used to load the managers lazily, thus avoiding a circular dependency
|
|
|
- * @param string $baseDir The base directory for relative inputs
|
|
|
- * @param Boolean $debug The current debug mode
|
|
|
+ * @param KernelInterface $kernel The kernel is used to parse bundle notation
|
|
|
+ * @param ContainerInterface $container The container is used to load the managers lazily, thus avoiding a circular dependency
|
|
|
+ * @param ParameterBagInterface $parameterBag The container parameter bag
|
|
|
+ * @param string $baseDir The base directory for relative inputs
|
|
|
+ * @param Boolean $debug The current debug mode
|
|
|
*/
|
|
|
- public function __construct(KernelInterface $kernel, ContainerInterface $container, $baseDir, $debug = false)
|
|
|
+ public function __construct(KernelInterface $kernel, ContainerInterface $container, ParameterBagInterface $parameterBag, $baseDir, $debug = false)
|
|
|
{
|
|
|
$this->kernel = $kernel;
|
|
|
$this->container = $container;
|
|
|
+ $this->parameterBag = $parameterBag;
|
|
|
|
|
|
parent::__construct($baseDir, $debug);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * Adds support for bundle notation file and glob assets.
|
|
|
+ * Adds support for bundle notation file and glob assets and parameter placeholders.
|
|
|
*
|
|
|
* FIXME: This is a naive implementation of globs in that it doesn't
|
|
|
* attempt to support bundle inheritance within the glob pattern itself.
|
|
|
*/
|
|
|
protected function parseInput($input, array $options = array())
|
|
|
{
|
|
|
+ $input = $this->parameterBag->resolveValue($input);
|
|
|
+
|
|
|
// expand bundle notation
|
|
|
if ('@' == $input[0] && false !== strpos($input, '/')) {
|
|
|
// use the bundle path as this asset's root
|