Skip to content

Commit

Permalink
[AsseticBundle] added configuration for automatically apply filters t…
Browse files Browse the repository at this point in the history
…o assets based on target path
  • Loading branch information
kriswallsmith committed May 15, 2011
1 parent 7f7ea42 commit 4ae40f1
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 1 deletion.
Expand Up @@ -15,6 +15,7 @@
use Symfony\Component\Config\Definition\Processor;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\DefinitionDecorator;
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
Expand Down Expand Up @@ -79,6 +80,15 @@ public function load(array $configs, ContainerBuilder $container)
unset($filter['file']);
}

if (isset($filter['apply_to'])) {
$worker = new DefinitionDecorator('assetic.worker.ensure_filter');
$worker->replaceArgument(0, '/'.$filter['apply_to'].'/');
$worker->replaceArgument(1, new Reference('assetic.filter.'.$name));
$worker->addTag('assetic.factory_worker');

$container->setDefinition('assetic.filter.'.$name.'.worker', $worker);
}

foreach ($filter as $key => $value) {
$container->setParameter('assetic.filter.'.$name.'.'.$key, $value);
}
Expand Down
6 changes: 6 additions & 0 deletions src/Symfony/Bundle/AsseticBundle/Resources/config/assetic.xml
Expand Up @@ -15,6 +15,7 @@
<parameter key="assetic.coalescing_directory_resource.class">Assetic\Factory\Resource\CoalescingDirectoryResource</parameter>
<parameter key="assetic.directory_resource.class">Symfony\Bundle\AsseticBundle\Factory\Resource\DirectoryResource</parameter>
<parameter key="assetic.filter_manager.class">Symfony\Bundle\AsseticBundle\FilterManager</parameter>
<parameter key="assetic.worker.ensure_filter.class">Assetic\Factory\Worker\EnsureFilterWorker</parameter>

<parameter key="assetic.node.paths" type="collection"></parameter>
<parameter key="assetic.cache_dir">%kernel.cache_dir%/assetic</parameter>
Expand Down Expand Up @@ -54,5 +55,10 @@
<tag name="kernel.cache_warmer" priority="10" />
<argument type="service" id="service_container" />
</service>

<service id="assetic.worker.ensure_filter" class="%assetic.worker.ensure_filter.class%" abstract="true" public="false">
<argument /> <!-- pattern -->
<argument /> <!-- filter -->
</service>
</services>
</container>
Expand Up @@ -32,7 +32,8 @@ assetic:
inputs: css/widget.sass
filters: sass
filters:
sass: ~
sass:
apply_to: "\.sass$"
yui_css:
jar: %kernel.root_dir/java/yui-compressor-2.4.6.jar
twig:
Expand Down

0 comments on commit 4ae40f1

Please sign in to comment.