mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-04-08 17:15:08 +02:00
parent
c78a7912e7
commit
b0932d2413
@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
/* Icinga Web 2 | (c) 2016 Icinga Development Team | GPLv2+ */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper for escaping comments, but preserving links
|
||||||
|
*/
|
||||||
|
class Zend_View_Helper_EscapeComment extends Zend_View_Helper_Abstract
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* The purifier to use for escaping
|
||||||
|
*
|
||||||
|
* @var HTMLPurifier
|
||||||
|
*/
|
||||||
|
protected static $purifier;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Escape any comment for being placed inside HTML, but preserve simple links (<a href="...">).
|
||||||
|
*
|
||||||
|
* @param string $comment
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function escapeComment($comment)
|
||||||
|
{
|
||||||
|
if (self::$purifier === null) {
|
||||||
|
require_once 'HTMLPurifier/Bootstrap.php';
|
||||||
|
require_once 'HTMLPurifier.php';
|
||||||
|
require_once 'HTMLPurifier.autoload.php';
|
||||||
|
|
||||||
|
$config = HTMLPurifier_Config::createDefault();
|
||||||
|
$config->set('Core.EscapeNonASCIICharacters', true);
|
||||||
|
$config->set('HTML.Allowed', 'a[href]');
|
||||||
|
$config->set('Cache.DefinitionImpl', null);
|
||||||
|
self::$purifier = new HTMLPurifier($config);
|
||||||
|
}
|
||||||
|
return self::$purifier->purify($comment);
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user