Moodle PHP Documentation 4.5
Moodle 4.5dev (Build: 20240606) (d3ae1391abe)
HTMLPurifier_HTMLModuleManager Class Reference

Public Member Functions

 addModule ($module)
 Adds a module to the current doctype by first registering it, and then tacking it on to the active doctype.
 
 addPrefix ($prefix)
 Adds a class prefix that registerModule() will use to resolve a string name to a concrete class.
 
 getElement ($name, $trusted=null)
 Retrieves a single merged element definition.
 
 getElements ()
 Retrieves merged element definitions.
 
 processModule ($module)
 Takes a module and adds it to the active module collection, registering it if necessary.
 
 registerModule ($module, $overload=false)
 Registers a module to the recognized module list, useful for overloading pre-existing modules.
 
 setup ($config)
 Performs processing on modules, after being called you may use getElement() and getElements()
 

Public Attributes

 $attrCollections
 @type HTMLPurifier_AttrCollections
 
 $attrTypes
 @type HTMLPurifier_AttrTypes
 
 $contentSets
 @type HTMLPurifier_ContentSets
 
 $doctype
 Instance of current doctype.
 
 $doctypes
 
 $elementLookup = array()
 Associative array of element name to list of modules that have definitions for the element; this array is dynamically filled.
 
 $modules = array()
 Active instances of modules for the specified doctype are indexed, by name, in this array.
 
 $prefixes = array('HTMLPurifier_HTMLModule_')
 List of prefixes we should use for registering small names.
 
 $registeredModules = array()
 Array of recognized HTMLPurifier_HTMLModule instances, indexed by module's class name.
 
 $trusted = false
 If set to true, unsafe elements and attributes will be allowed.
 
 $userModules = array()
 List of extra modules that were added by the user using addModule().
 

Member Function Documentation

◆ getElement()

HTMLPurifier_HTMLModuleManager::getElement ( $name,
$trusted = null )

Retrieves a single merged element definition.

Parameters
string$nameName of element
bool$trustedBoolean trusted overriding parameter: set to true if you want the full version of an element
Return values
HTMLPurifier_ElementDefMerged HTMLPurifier_ElementDef
Note
You may notice that modules are getting iterated over twice (once in getElements() and once here). This is because

◆ getElements()

HTMLPurifier_HTMLModuleManager::getElements ( )

Retrieves merged element definitions.

Return values
Arrayof HTMLPurifier_ElementDef

◆ registerModule()

HTMLPurifier_HTMLModuleManager::registerModule ( $module,
$overload = false )

Registers a module to the recognized module list, useful for overloading pre-existing modules.

Parameters
$moduleMixed: string module name, with or without HTMLPurifier_HTMLModule prefix, or instance of subclass of HTMLPurifier_HTMLModule.
$overloadBoolean whether or not to overload previous modules. If this is not set, and you do overload a module, HTML Purifier will complain with a warning.
Note
This function will not call autoload, you must instantiate (and thus invoke) autoload outside the method.
If a string is passed as a module name, different variants will be tested in this order:
  • Check for HTMLPurifier_HTMLModule_$name
  • Check all prefixes with $name in order they were added
  • Check for literal object name
  • Throw fatal error If your object name collides with an internal class, specify your module manually. All modules must have been included externally: registerModule will not perform inclusions for you!

◆ setup()

HTMLPurifier_HTMLModuleManager::setup ( $config)

Performs processing on modules, after being called you may use getElement() and getElements()

Parameters
HTMLPurifier_Config$config

Member Data Documentation

◆ $doctype

HTMLPurifier_HTMLModuleManager::$doctype

Instance of current doctype.

@type string

◆ $elementLookup

HTMLPurifier_HTMLModuleManager::$elementLookup = array()

Associative array of element name to list of modules that have definitions for the element; this array is dynamically filled.

@type array

◆ $modules

HTMLPurifier_HTMLModuleManager::$modules = array()

Active instances of modules for the specified doctype are indexed, by name, in this array.

@type HTMLPurifier_HTMLModule[]

◆ $prefixes

HTMLPurifier_HTMLModuleManager::$prefixes = array('HTMLPurifier_HTMLModule_')

List of prefixes we should use for registering small names.

@type array

◆ $registeredModules

HTMLPurifier_HTMLModuleManager::$registeredModules = array()

Array of recognized HTMLPurifier_HTMLModule instances, indexed by module's class name.

This array is usually lazy loaded, but a user can overload a module by pre-emptively registering it. @type HTMLPurifier_HTMLModule[]

◆ $trusted

HTMLPurifier_HTMLModuleManager::$trusted = false

If set to true, unsafe elements and attributes will be allowed.

@type bool

◆ $userModules

HTMLPurifier_HTMLModuleManager::$userModules = array()

List of extra modules that were added by the user using addModule().

These get unconditionally merged into the current doctype, whatever it may be. @type HTMLPurifier_HTMLModule[]


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