ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilHtmlPurifierAbstractLibWrapper Class Reference

Abstract class wrapping the HTMLPurifier instance. More...

+ Inheritance diagram for ilHtmlPurifierAbstractLibWrapper:
+ Collaboration diagram for ilHtmlPurifierAbstractLibWrapper:

Public Member Functions

 __construct ()
 ilHtmlPurifierAbstractLibWrapper constructor. More...
 
 purify (string $html)
 
 purifyArray (array $htmlCollection)
 

Static Public Member Functions

static _getCacheDirectory ()
 

Protected Member Functions

 getPurifierConfigInstance ()
 
 setPurifier (HTMLPurifier $purifier)
 
 getPurifier ()
 
 removeUnsupportedElements (array $elements)
 Removes all unsupported elements. More...
 
 makeElementListTinyMceCompliant (array $elements)
 

Protected Attributes

 $purifier
 

Detailed Description

Abstract class wrapping the HTMLPurifier instance.

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

Definition at line 8 of file class.ilHtmlPurifierAbstractLibWrapper.php.

Constructor & Destructor Documentation

◆ __construct()

ilHtmlPurifierAbstractLibWrapper::__construct ( )

ilHtmlPurifierAbstractLibWrapper constructor.

Definition at line 16 of file class.ilHtmlPurifierAbstractLibWrapper.php.

References getPurifierConfigInstance(), and setPurifier().

17  {
18  $this->setPurifier(
19  new HTMLPurifier($this->getPurifierConfigInstance())
20  );
21  }
+ Here is the call graph for this function:

Member Function Documentation

◆ _getCacheDirectory()

static ilHtmlPurifierAbstractLibWrapper::_getCacheDirectory ( )
staticfinal
Returns
string

Definition at line 65 of file class.ilHtmlPurifierAbstractLibWrapper.php.

References ilUtil\getDataDir(), and ilUtil\makeDirParents().

Referenced by ilWebDAVMountInstructionsDocumentPurifier\__construct(), ilAccessibilityDocumentHtmlPurifier\__construct(), ilTermsOfServiceDocumentHtmlPurifier\__construct(), ilHtmlForumPostPurifier\getPurifierConfigInstance(), and ilAssHtmlPurifier\getPurifierConfigInstance().

65  : string
66  {
67  if (!file_exists(ilUtil::getDataDir() . '/HTMLPurifier') ||
68  !is_dir(ilUtil::getDataDir() . '/HTMLPurifier')) {
69  ilUtil::makeDirParents(ilUtil::getDataDir() . '/HTMLPurifier');
70  }
71 
72  return ilUtil::getDataDir() . '/HTMLPurifier';
73  }
static makeDirParents($a_dir)
Create a new directory and all parent directories.
static getDataDir()
get data directory (outside webspace)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPurifier()

ilHtmlPurifierAbstractLibWrapper::getPurifier ( )
protected
Returns
HTMLPurifier

Definition at line 57 of file class.ilHtmlPurifierAbstractLibWrapper.php.

References $purifier.

57  : HTMLPurifier
58  {
59  return $this->purifier;
60  }

◆ getPurifierConfigInstance()

ilHtmlPurifierAbstractLibWrapper::getPurifierConfigInstance ( )
abstractprotected
Returns
HTMLPurifier_Config

Referenced by __construct(), and purifyArray().

+ Here is the caller graph for this function:

◆ makeElementListTinyMceCompliant()

ilHtmlPurifierAbstractLibWrapper::makeElementListTinyMceCompliant ( array  $elements)
protected
Parameters
string[]$elements
Returns
string[]

Definition at line 110 of file class.ilHtmlPurifierAbstractLibWrapper.php.

Referenced by ilAssHtmlPurifier\getAllowedElements(), ilHtmlForumPostPurifier\getPurifierConfigInstance(), ilWebDAVMountInstructionsDocumentPurifier\getPurifierConfigInstance(), ilAccessibilityDocumentHtmlPurifier\getPurifierConfigInstance(), and ilTermsOfServiceDocumentHtmlPurifier\getPurifierConfigInstance().

110  : array
111  {
112  // Bugfix #5945: Necessary because TinyMCE does not use the "u"
113  // html element but <span style="text-decoration: underline">E</span>
114 
115  if (in_array('u', $elements) && !in_array('span', $elements)) {
116  $elements[] = 'span';
117  }
118 
119  return $elements;
120  }
+ Here is the caller graph for this function:

◆ purify()

ilHtmlPurifierAbstractLibWrapper::purify ( string  $html)
final

Implements ilHtmlPurifierInterface.

Definition at line 26 of file class.ilHtmlPurifierAbstractLibWrapper.php.

26  : string
27  {
28  return $this->purifier->purify($html);
29  }

◆ purifyArray()

ilHtmlPurifierAbstractLibWrapper::purifyArray ( array  $htmlCollection)
final

Implements ilHtmlPurifierInterface.

Definition at line 34 of file class.ilHtmlPurifierAbstractLibWrapper.php.

References getPurifierConfigInstance().

34  : array
35  {
36  return $this->purifier->purifyArray($htmlCollection);
37  }
+ Here is the call graph for this function:

◆ removeUnsupportedElements()

ilHtmlPurifierAbstractLibWrapper::removeUnsupportedElements ( array  $elements)
finalprotected

Removes all unsupported elements.

Parameters
string[]$elements
Returns
string[]

Definition at line 80 of file class.ilHtmlPurifierAbstractLibWrapper.php.

Referenced by ilAssHtmlPurifier\getAllowedElements(), ilHtmlForumPostPurifier\getPurifierConfigInstance(), ilWebDAVMountInstructionsDocumentPurifier\getPurifierConfigInstance(), ilAccessibilityDocumentHtmlPurifier\getPurifierConfigInstance(), and ilTermsOfServiceDocumentHtmlPurifier\getPurifierConfigInstance().

80  : array
81  {
82  $supportedElements = array();
83 
84  $notSupportedTags = array(
85  'rp',
86  'rt',
87  'rb',
88  'rtc',
89  'rbc',
90  'ruby',
91  'u',
92  'strike',
93  'param',
94  'object'
95  );
96 
97  foreach ($elements as $element) {
98  if (!in_array($element, $notSupportedTags)) {
99  $supportedElements[] = $element;
100  }
101  }
102 
103  return $supportedElements;
104  }
+ Here is the caller graph for this function:

◆ setPurifier()

ilHtmlPurifierAbstractLibWrapper::setPurifier ( HTMLPurifier  $purifier)
protected
Parameters
HTMLPurifier$purifier
Returns
ilHtmlPurifierAbstractLibWrapper

Definition at line 48 of file class.ilHtmlPurifierAbstractLibWrapper.php.

References $purifier.

Referenced by __construct().

48  : self
49  {
50  $this->purifier = $purifier;
51  return $this;
52  }
+ Here is the caller graph for this function:

Field Documentation

◆ $purifier

ilHtmlPurifierAbstractLibWrapper::$purifier
protected

Definition at line 11 of file class.ilHtmlPurifierAbstractLibWrapper.php.

Referenced by getPurifier(), and setPurifier().


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