StrictLatte pro uživatelské šablony

Taco
Člen | 46
+
+1
-

Moc rád bych použil Latte pro uživatelem editovanou šablonu. V taovém případě ale přirozeně nesmím dovolit, aby si uživatel v šabloně jen tak vykonával php kód. David kdysi kdesi tvrdil, že by to mělo být snadné, jen nemá motivaci to udělat. Tak jsem to zkusil já.

[https://packagist.org/…-lattestrict]

Snažil jsem se zabránit, aby uživatel mohl šahat na cizí proměnné, volat globální funkce a třídy.
Taky jsem se snažil, aby spíše, než vyhazovat syntaktickou chybu to prostě nepoužilo a vykreslilo zdroj.

Ještě bych to rád vylepšil, ale třeba na to jdu zcela špatně :-)

Zkuste se na to prosím podívat a zkritizovat. Díky.

CZechBoY
Člen | 3608
+
0
-

Vykreslit zdroj je asi horší než vykreslit prázdnej blok. Každý si přece může zvalidovat latte šablonu tím, že ji zkusí zkompilovat, ne? :-)

Taco
Člen | 46
+
0
-

CZechBoY napsal(a):

Vykreslit zdroj je asi horší než vykreslit prázdnej blok. Každý si přece může zvalidovat latte šablonu tím, že ji zkusí zkompilovat, ne? :-)

Tak v případě, kdy není validní třeba podmínka tak možná jo. Ale říkal jsem si, že buzerovat kůli neznámému makru jen proto, že tam uživatel napsal chlupatou závorku mi přišlo škoda.

Editoval Taco (4. 2. 2018 16:09)

Isigarek
Člen | 74
+
0
-

Já to používám třeba při tom, když si můžou upravit podobu emailu při aktivaci v wysg editoru s html a k tomu mají třeba parametr {$link} a to stačí. Aspoň tedy mě to vždy stačilo.