Detekce kontextu (text, tag, js) ve vlastním filteru
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- adamjosefus
- Člen | 6
Mám vlastní filtr. Rád bych aby se choval různě v různých kontextech. Jinak když je v textu, jinak uvnitř HTML parametru, jinak v javascriptu… Analogicky jak se defaultně escapuje proměněná.
Jak na to?
Filtr:
$template->addFilter('priklad', function ($string) {
return $string;
});
Latte:
{"<b>Foo</b>"|priklad}
Výsledek se vypíše tučně. Rád bych aby se vypsalo
<b>Foo</b>
.
Dělám někde chybu?
Editoval adamjosefus (21. 7. 2015 1:36)
- David Matějka
- Moderator | 6445
Latte escapuje dle contextu (skoro) vzdy. to, ze pouzijes filtr by nemelo hrat roli. Pokud to nefunguje spravne, posli konkretni priklad
- adamjosefus
- Člen | 6
Dělal jsem chybu. String musím volat takto:
{="string"|foo}
Omlouvám se za diletanci. Moc díky za bleskovou odpověď.
Editoval adamjosefus (21. 7. 2015 1:37)