ILIAS  release_4-4 Revision
ilHtmlPurifierComposite Class Reference

Composite for nesting multiple purifiers. More...

+ Inheritance diagram for ilHtmlPurifierComposite:
+ Collaboration diagram for ilHtmlPurifierComposite:

Public Member Functions

 addPurifier (ilHtmlPurifierInterface $a_purifier)
 Adds a node to composite. More...
 
 removePurifier (ilHtmlPurifierInterface $a_purifier)
 Removes a node from composite. More...
 
 purify ($a_html)
 Filters an HTML snippet/document to be XSS-free and standards-compliant. More...
 
 purifyArray (Array $a_array_of_html)
 Filters an array of HTML snippets/documents to be XSS-free and standards-compliant. More...
 

Protected Attributes

 $purifiers = array()
 

Detailed Description

Composite for nesting multiple purifiers.

Author
Michael Jansen mjans.nosp@m.en@d.nosp@m.ataba.nosp@m.y.de
Version
$Id$

Definition at line 13 of file class.ilHtmlPurifierComposite.php.

Member Function Documentation

◆ addPurifier()

ilHtmlPurifierComposite::addPurifier ( ilHtmlPurifierInterface  $a_purifier)

Adds a node to composite.

public

Parameters
ilHtmlPurifierInterface$a_purifierInstance of ilHtmlPurifierInterface
Returns
bool True if instance could be added, otherwise false

Definition at line 33 of file class.ilHtmlPurifierComposite.php.

34  {
35  $key = array_search($a_purifier, $this->purifiers);
36  if(false === $key)
37  {
38  $this->purifiers[] = $a_purifier;
39  return true;
40  }
41 
42  return false;
43  }

◆ purify()

ilHtmlPurifierComposite::purify (   $a_html)

Filters an HTML snippet/document to be XSS-free and standards-compliant.

public

Parameters
string$a_htmlHTML snippet/document
Returns
string purified html

Implements ilHtmlPurifierInterface.

Definition at line 73 of file class.ilHtmlPurifierComposite.php.

74  {
75  foreach($this->purifiers as $oPurifier)
76  {
77  $a_html = $oPurifier->purify($a_html);
78  }
79 
80  return $a_html;
81  }

◆ purifyArray()

ilHtmlPurifierComposite::purifyArray ( Array  $a_array_of_html)

Filters an array of HTML snippets/documents to be XSS-free and standards-compliant.

public

Parameters
array$a_array_of_htmlHTML snippet/document
Returns
array Array of HTML snippets/documents

Implements ilHtmlPurifierInterface.

Definition at line 91 of file class.ilHtmlPurifierComposite.php.

92  {
93  foreach($a_array_of_html as $key => $html)
94  {
95  foreach($this->purifiers as $oPurifier)
96  {
97  $html = $oPurifier->purify($html);
98  }
99 
100  $a_array_of_html[$key] = $html;
101  }
102 
103  return $a_array_of_html;
104  }

◆ removePurifier()

ilHtmlPurifierComposite::removePurifier ( ilHtmlPurifierInterface  $a_purifier)

Removes a node from composite.

public

Parameters
ilHtmlPurifierInterface$a_purifierInstance of ilHtmlPurifierInterface
Returns
bool True if instance could be removed, otherwise false

Definition at line 53 of file class.ilHtmlPurifierComposite.php.

54  {
55  $key = array_search($a_purifier, $this->purifiers);
56  if(false === $key)
57  {
58  return false;
59  }
60  unset($this->purifiers[$key]);
61 
62  return true;
63  }

Field Documentation

◆ $purifiers

ilHtmlPurifierComposite::$purifiers = array()
protected

Definition at line 23 of file class.ilHtmlPurifierComposite.php.


The documentation for this class was generated from the following file: