mirror of
				https://github.com/Icinga/icingaweb2.git
				synced 2025-10-31 19:34:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?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);
 | |
|     }
 | |
| }
 |