Texy! + Latte & <nette:texy>

- cactux
 - Člen | 12
 
Ahoj,
Existuje nějaká možnost jak použít Texy! a Nette (nebo Latte) jak bylo
ukázáno Davidem Grudlem v článku Jak si rozmí
Nette s Texy! (z roku 2006)? Tedy tak, že se nette kód uzavře do tagu
<nette:texy> (nebo něco na ten způsob).

- Jan Tvrdík
 - Nette guru | 2595
 
Nejjednodušší je zaregistrovat si filtr (dříve se tomu říkalo helper)
texy a v šabloně pak použít něco jako:
{block|texy}
**tučný text**, ...
{/block}
Nebo si můžeš vytvořit vlastní makro {texy}...{/texy}, což
ti umožní překládat ten text v rámci kompilace.

- japlavaren
 - Člen | 404
 
Prehladal som zdrojaky nette a texy mi nenaslo, takze predpokladam, ze
nativna podpora tam nieje.
Takze by som to riesil nasledovne:
1. vytvoril sluzbu TexyFilter, ktora by vytvorila texy a nastavila vsetko potrebne
<?php
// service sa mi nechce pisat, v skratke:
// objekt ktory bude mat metodu process ktora to prezenie cez texy
// k texy pristupovat ako k singleton, tj. objekt private propperty a k nej getter ktory vytvori ak neexistuje
?>
2. zaregistroval ju v neone,
service:
	texyFilter: App\Model\TexyFilter
3. zaregistroval filter
service:
	nette.latteFactory:
		setup:
			- addFilter(null, [@texyFilter, process])
4. v sablone mozes pouzivat nasledovne
{$text |texy}
ps: aby si v sablone nemusel zakazovat escapovanie texy, vracaj si vystup zo service alo objekt Html, ten latte neescapuje
Editoval japlavaren (4. 8. 2014 17:01)