protected function AsseticNode::compileAssetUrl

1 call to AsseticNode::compileAssetUrl()
AsseticNode::compileAsset in drupal/core/vendor/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticNode.php

File

drupal/core/vendor/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticNode.php, line 135

Class

AsseticNode

Namespace

Assetic\Extension\Twig

Code

protected function compileAssetUrl(\Twig_Compiler $compiler, AssetInterface $asset, $name) {
  if (!($vars = $asset
    ->getVars())) {
    $compiler
      ->repr($asset
      ->getTargetPath());
    return;
  }
  $compiler
    ->raw("strtr(")
    ->string($asset
    ->getTargetPath())
    ->raw(", array(");
  $first = true;
  foreach ($vars as $var) {
    if (!$first) {
      $compiler
        ->raw(", ");
    }
    $first = false;
    $compiler
      ->string("{" . $var . "}")
      ->raw(" => \$context['assetic']['vars']['{$var}']");
  }
  $compiler
    ->raw("))");
}