/** * Install macros. * * @param \Latte\Compiler $compiler * @return \Latte\Macros\MacroSet */ public function install(\Latte\Compiler $compiler) { $set = new \Latte\Macros\MacroSet($compiler); $set->addMacro('script', array($this, 'macroScript')); $set->addMacro('stylesheet', array($this, 'macroStylesheet')); $set->addMacro('resourceurl', array($this, 'macroResourceUrl')); $set->addMacro('resourcehash', array($this, 'macroResourceHash')); return $set; }
protected function createTemplate($class = NULL) { $template = parent::createTemplate(); $latte = $template->getLatte(); $set = new \Latte\Macros\MacroSet($latte->getCompiler()); $set->addMacro('scache', '?>?<?php echo strtotime(date(\'Y-m-d hh \')); ?>"<?php'); $latte->addFilter('scache', $set); return $template; }
public function scanRoutes($path) { $routes = []; $latte = new Latte\Engine(); $macroSet = new Latte\Macros\MacroSet($latte->getCompiler()); $macroSet->addMacro('url', function ($node) use(&$routes, &$file) { $routes[$node->args] = (string) $file; }, NULL, NULL, $macroSet::ALLOWED_IN_HEAD); foreach (Nette\Utils\Finder::findFiles('*.latte')->from($path) as $file) { $latte->compile($file); } return $routes; }
/** * * @param \DIPcms\Scripter\LatteFactory $latte * @param self $macros */ public static function addMacro(LatteFactory $latte, self $macros) { $macroSet = new \Latte\Macros\MacroSet($latte->getCompiler()); $macroSet->addMacro("img", array($macros, "createMacroImg")); $macroSet->addMacro("file", array($macros, "createMacroFile")); }
public static function addMacro(Engine $latte, self $macros) { $macroSet = new \Latte\Macros\MacroSet($latte->getCompiler()); $macroSet->addMacro('text', null, array($macros, 'endGetText'), array($macros, 'createMacroGetText')); }