Jak upravit filter tak, aby neprobíhalo escapování v rámci CSS kontextu?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Mysteria
- Člen | 797
Zdravím,
je možné následující filter na generování CSS progressbaru v rámci
nějakého HTML elementu upravit tak, aby při jeho použití nebylo nutné
používat i |noescape? Respektive lze nějak tomu filtru říct, že generuje
CSS kód, který není potřeba dále v CSS kontextu escapovat? Díky.
$this->template->addFilter('bgStatus', function($current, $maximum) {
return "background: url('{$this->template->basePath}/images/grey.png') 0% / " . number_format($current / $maximum * 100, 2, '.', "\xe2\x80\x87") . "% 100% no-repeat;";
});
<td style="{$current|bgStatus:$maximum|noescape}"> ... </td>
<td style="background: url('/www/images/grey.png') 0% / 21.68% 100% no-repeat;"> ... </td>
<td style="{$current|bgStatus:$maximum}"> ... </td>
<td style="background\: url\(\'\/www\/images\/grey\.png\'\) 0\% \/ 21\.68\% 100\% no-repeat\;"> ... </td>
- Myiyk
- Člen | 321
Dívám se na filtry v latte tam se vrací Latte\Runtime\Html, aby se to neescapovalo.