Vous êtes connecté en tant que anonymous Se Deconnecter
engine || $new) { $this->engine = new PlatesEngine( dirname($this->config->get('path.found')), ltrim($this->config->get('extension', '.tpl'), '.') ); foreach ($this->folders as $namespace => $folder) { $this->engine->addFolder($namespace, $folder['folder'], $folder['fallback']); } foreach ($this->extensions as $extension) { $this->engine->loadExtension($extension); } } return $this->engine; } /** * Method to set property engine * * @param PlatesEngine $engine * * @return static Return self to support chaining. */ public function setEngine($engine) { if (!($engine instanceof PlatesEngine)) { throw new \InvalidArgumentException('Engine object should be Mustache_Engine'); } $this->engine = $engine; return $this; } /** * render * * @param string $file * @param array $data * * @return string */ public function render($file, $data = []) { $path = $this->findFile($file); $this->config->set('path.found', $path); return $this->getEngine()->render($file, $data); } /** * findFile * * @param string $file * @param string $ext * * @return string */ public function findFile($file, $ext = '') { $ext = $ext ?: $this->config->get('extension', 'tpl'); return parent::findFile($file, $ext); } /** * addExtension * * @param ExtensionInterface $extension * * @return static */ public function addExtension(ExtensionInterface $extension) { $this->extensions[] = $extension; return $this; } /** * addFolder * * @param string $namespace * @param string $folder * @param boolean $fallback * * @return static */ public function addFolder($namespace, $folder, $fallback = false) { $this->folders[$namespace] = [ 'folder' => $folder, 'fallback' => $fallback, ]; return $this; } }