Zakázání escapování odkazů

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

Ahoj,
mám vlastní helper, který mi v textu převede odkazy do klikatelné podoby. Tento text chci samozřejmě escapovat, vyjímkou jsou vytvořené odkazy. Napadá mě přímo v helperu data escapovat pro html kontext a poté je vypisovat s vykřičníkem. Kde bych nejjednodušeji získal Helpers::escapeHtml()?

Seith
Člen | 24
+
0
-

Tak nakonec jsem to pořešil takto. Vypisuji přes {!$var|linkify}.

$that = $this;
$this->template->registerHelper('linkify', function ($s) use ($that) {
	$s = $that->template->escapeHtml($s);
	return preg_replace('~((http(s?)://)|(www\.))(\S+[^,.\s])~',
		'<a href="http$3://$4$5" target="_blank">$0</a>', $s);
});