Exemplo n.º 1
0
 public function testGetNamespaces()
 {
     $loader = new Twig_Loader_Filesystem(sys_get_temp_dir());
     $this->assertEquals(array(Twig_Loader_Filesystem::MAIN_NAMESPACE), $loader->getNamespaces());
     $loader->addPath(sys_get_temp_dir(), 'named');
     $this->assertEquals(array(Twig_Loader_Filesystem::MAIN_NAMESPACE, 'named'), $loader->getNamespaces());
 }
Exemplo n.º 2
0
 public function testGetNamespaces()
 {
     $loader = new Twig_Loader_Filesystem(sys_get_temp_dir());
     $this->assertEquals(array('__main__'), $loader->getNamespaces());
     $loader->addPath(sys_get_temp_dir(), 'named');
     $this->assertEquals(array('__main__', 'named'), $loader->getNamespaces());
 }
 public function dump()
 {
     $finder = new Finder();
     $twigNamespaces = $this->loader->getNamespaces();
     foreach ($twigNamespaces as $ns) {
         if (count($this->loader->getPaths($ns)) > 0) {
             $iterator = $finder->files()->in($this->loader->getPaths($ns));
             foreach ($iterator as $file) {
                 /** @var SplFileInfo $file */
                 $resource = new TwigResource($this->loader, '@' . $ns . '/' . $file->getRelativePathname());
                 $this->lam->addResource($resource, 'twig');
             }
         }
     }
     foreach ($this->lam->getNames() as $name) {
         $asset = $this->lam->get($name);
         $formula = $this->lam->getFormula($name);
         $debug = isset($formula[2]['debug']) ? $formula[2]['debug'] : $this->lam->isDebug();
         $combine = isset($formula[2]['combine']) ? $formula[2]['combine'] : null;
         if (null !== $combine ? !$combine : $debug) {
             foreach ($asset as $leaf) {
                 $this->aw->writeAsset($leaf);
             }
         } else {
             $this->aw->writeAsset($asset);
         }
     }
 }
Exemplo n.º 4
0
 /**
  * TwigFilesystemProvider constructor.
  * @param \Twig_Loader_Filesystem $loader
  * @param string $root_path
  * @param string $namespace
  */
 public function __construct(\Twig_Loader_Filesystem $loader, $root_path, $namespace)
 {
     $this->loader = $loader;
     $this->namespace = $namespace;
     if (!in_array($namespace, $loader->getNamespaces())) {
         $loader->addPath($root_path, $namespace);
     }
 }
 /**
  * Get the template directories
  *
  * @return TemplatePath[]
  */
 public function getPaths()
 {
     $paths = [];
     foreach ($this->twigLoader->getNamespaces() as $namespace) {
         $name = $namespace !== TwigFilesystem::MAIN_NAMESPACE ? $namespace : null;
         foreach ($this->twigLoader->getPaths($namespace) as $path) {
             $paths[] = new TemplatePath($path, $name);
         }
     }
     return $paths;
 }
Exemplo n.º 6
0
 /**
  * Get templates directories namespaces.
  * @return array An array of namespaces used to reference templates directories.
  */
 public function getTemplatesNamespaces()
 {
     return $this->_loader->getNamespaces();
 }