private function initTemplating(ContainerBuilder $builder, $config) { $builder->addDefinition($this->prefix('templateManager'))->setClass('movi\\Templating\\TemplateManager', ['%templatesDir%']); $builder->addDefinition($this->prefix('helpers'))->setClass('movi\\Templating\\Helpers'); $latte = $builder->getDefinition('nette.latte'); $latte->addSetup('movi\\Templating\\Macros\\moviMacros::install(?->compiler)', ['@self']); $latte->addSetup('movi\\Templating\\Macros\\MediaMacros::install(?->compiler)', ['@self']); foreach ($config['macros'] as $macro) { if (strpos($macro, '::') === FALSE && class_exists($macro)) { $macro .= '::install'; } else { Validators::isCallable($macro); } $latte->addSetup($macro . '(?->compiler)', array('@self')); } }