templatePrepareFiles error

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Berny
Člen | 15
+
0
-

Zdravím.
Mám tu ještě jednu a poslední chybu se kterou si nevím rady..

public function templatePrepareFilters($template){
    $latte = new Nette\Latte\Engine;
    $macroSet = new Nette\Latte\Macros\MacroSet($latte->parser);
    $macroSet->addMacro(
        'function',
        'function'
    );
    $template->registerFilter($latte);
}

Vyhodí tuhle chybu

Argument 1 passed to Nette\Latte\Macros\MacroSet::__construct() must be an instance of Nette\Latte\Compiler, instance of Nette\Latte\Parser given, called in BasePresenter.php on line 67 and defined

Editoval Berny (10. 5. 2013 17:01)

Tabetha
Člen | 140
+
0
-

tuším to daj takto

public function templatePrepareFilters($template){
    $latte = new Nette\Latte\Engine;
    $macroSet = new Nette\Latte\Macros\MacroSet($latte->compiler); //Tu zmena
    $macroSet->addMacro(
        'function',
        'function'
    );
    $template->registerFilter($latte);
}
Berny
Člen | 15
+
0
-

Děkuji mnohokrát a ještě (snad poslední otázka), co udělat pro to, aby mi to nepsalo uvozovky

např.

$macroSet->addMacro(
        'function',
        'echo $class->%'
    );

v šabloně (error)
{function trida}

<?php echo $class->'trida' ?>