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

Public Member Functions

 __construct ($definition, $parent=null)
 Constructor.
 
 autoFinalize ()
 Finalizes configuration only if auto finalize is on and not already finalized.
 
 finalize ()
 Finalizes a configuration object, prohibiting further change.
 
 get ($key, $a=null)
 Retrieves a value from the configuration.
 
 getAll ()
 Retrieves all directives, organized by namespace.
 
 getBatch ($namespace)
 Retrieves an array of directives to values from a given namespace.
 
 getBatchSerial ($namespace)
 Returns a SHA-1 signature of a segment of the configuration object that uniquely identifies that particular configuration.
 
 getCSSDefinition ($raw=false, $optimized=false)
 Retrieves object reference to the CSS definition.
 
 getDefinition ($type, $raw=false, $optimized=false)
 Retrieves a definition.
 
 getHTMLDefinition ($raw=false, $optimized=false)
 Retrieves object reference to the HTML definition.
 
 getSerial ()
 Returns a SHA-1 signature for the entire configuration object that uniquely identifies that particular configuration.
 
 getURIDefinition ($raw=false, $optimized=false)
 Retrieves object reference to the URI definition.
 
 isFinalized ($error=false)
 Checks whether or not the configuration object is finalized.
 
 loadArray ($config_array)
 Loads configuration values from an array with the following structure: Namespace.Directive => Value.
 
 loadIni ($filename)
 Loads configuration values from an ini file.
 
 maybeGetRawCSSDefinition ()
 
 maybeGetRawDefinition ($name)
 
 maybeGetRawHTMLDefinition ()
 
 maybeGetRawURIDefinition ()
 
 mergeArrayFromForm ($array, $index=false, $allowed=true, $mq_fix=true)
 Merges in configuration values from $_GET/$_POST to object.
 
 serialize ()
 Returns a serialized form of the configuration object that can be reconstituted.
 
 set ($key, $value, $a=null)
 Sets a value to configuration.
 

Static Public Member Functions

static create ($config, $schema=null)
 Convenience constructor that creates a config object based on a mixed var.
 
static createDefault ()
 Convenience constructor that creates a default configuration object.
 
static getAllowedDirectivesForForm ($allowed, $schema=null)
 Returns a list of array(namespace, directive) for all directives that are allowed in a web-form context as per an allowed namespaces/directives list.
 
static inherit (HTMLPurifier_Config $config)
 Creates a new config object that inherits from a previous one.
 
static loadArrayFromForm ($array, $index=false, $allowed=true, $mq_fix=true, $schema=null)
 Loads configuration values from $_GET/$_POST that were posted via ConfigForm.
 
static prepareArrayFromForm ($array, $index=false, $allowed=true, $mq_fix=true, $schema=null)
 Prepares an array from a form into something usable for the more strict parts of HTMLPurifier_Config.
 

Public Attributes

 $autoFinalize = true
 Whether or not to automatically finalize the object if a read operation is done.
 
 $chatty = true
 Set to false if you do not want line and file numbers in errors.
 
 $def
 Reference HTMLPurifier_ConfigSchema for value checking.
 
 $version = '4.17.0'
 HTML Purifier's version @type string.
 

Protected Member Functions

 triggerError ($msg, $no)
 Produces a nicely formatted error message by supplying the stack frame information OUTSIDE of HTMLPurifier_Config.
 

Protected Attributes

 $definitions
 Indexed array of definitions.
 
 $finalized = false
 Whether or not config is finalized.
 
 $parser = null
 Parser for variables.
 
 $plist
 Property list containing configuration directives.
 
 $serial
 Serial for entire configuration object.
 
 $serials = array()
 Namespace indexed array of serials for specific namespaces.
 

Constructor & Destructor Documentation

◆ __construct()

HTMLPurifier_Config::__construct ( $definition,
$parent = null )

Constructor.

Parameters
HTMLPurifier_ConfigSchema$definitionConfigSchema that defines what directives are allowed.
HTMLPurifier_PropertyList$parent

Member Function Documentation

◆ create()

static HTMLPurifier_Config::create ( $config,
$schema = null )
static

Convenience constructor that creates a config object based on a mixed var.

Parameters
mixed$configVariable that defines the state of the config object. Can be: a HTMLPurifier_Config() object, an array of directives based on loadArray(), or a string filename of an ini file.
HTMLPurifier_ConfigSchema$schemaSchema object
Return values
HTMLPurifier_ConfigConfigured object

◆ createDefault()

static HTMLPurifier_Config::createDefault ( )
static

Convenience constructor that creates a default configuration object.

Return values
HTMLPurifier_Configdefault object.

◆ get()

HTMLPurifier_Config::get ( $key,
$a = null )

Retrieves a value from the configuration.

Parameters
string$keyString key
mixed$a
Return values
mixed

◆ getAll()

HTMLPurifier_Config::getAll ( )

Retrieves all directives, organized by namespace.

Warning
This is a pretty inefficient function, avoid if you can

◆ getAllowedDirectivesForForm()

static HTMLPurifier_Config::getAllowedDirectivesForForm ( $allowed,
$schema = null )
static

Returns a list of array(namespace, directive) for all directives that are allowed in a web-form context as per an allowed namespaces/directives list.

Parameters
array$allowedList of allowed namespaces/directives
HTMLPurifier_ConfigSchema$schemaSchema to use, if not global copy
Return values
array

◆ getBatch()

HTMLPurifier_Config::getBatch ( $namespace)

Retrieves an array of directives to values from a given namespace.

Parameters
string$namespaceString namespace
Return values
array

◆ getBatchSerial()

HTMLPurifier_Config::getBatchSerial ( $namespace)

Returns a SHA-1 signature of a segment of the configuration object that uniquely identifies that particular configuration.

Parameters
string$namespaceNamespace to get serial for
Return values
string
Note
Revision is handled specially and is removed from the batch before processing!

◆ getCSSDefinition()

HTMLPurifier_Config::getCSSDefinition ( $raw = false,
$optimized = false )

Retrieves object reference to the CSS definition.

Parameters
bool$rawReturn a copy that has not been setup yet. Must be called before it's been setup, otherwise won't work.
bool$optimizedIf true, this method may return null, to indicate that a cached version of the modified definition object is available and no further edits are necessary. Consider using maybeGetRawCSSDefinition, which is more explicitly named, instead.
Return values
HTMLPurifier_CSSDefinition|null

◆ getDefinition()

HTMLPurifier_Config::getDefinition ( $type,
$raw = false,
$optimized = false )

Retrieves a definition.

Parameters
string$typeType of definition: HTML, CSS, etc
bool$rawWhether or not definition should be returned raw
bool$optimizedOnly has an effect when $raw is true. Whether or not to return null if the result is already present in the cache. This is off by default for backwards compatibility reasons, but you need to do things this way in order to ensure that caching is done properly. Check out enduser-customize.html for more details. We probably won't ever change this default, as much as the maybe semantics is the "right thing to do."
Exceptions
HTMLPurifier_Exception
Return values
HTMLPurifier_Definition|null

◆ getHTMLDefinition()

HTMLPurifier_Config::getHTMLDefinition ( $raw = false,
$optimized = false )

Retrieves object reference to the HTML definition.

Parameters
bool$rawReturn a copy that has not been setup yet. Must be called before it's been setup, otherwise won't work.
bool$optimizedIf true, this method may return null, to indicate that a cached version of the modified definition object is available and no further edits are necessary. Consider using maybeGetRawHTMLDefinition, which is more explicitly named, instead.
Return values
HTMLPurifier_HTMLDefinition|null

◆ getSerial()

HTMLPurifier_Config::getSerial ( )

Returns a SHA-1 signature for the entire configuration object that uniquely identifies that particular configuration.

Return values
string

◆ getURIDefinition()

HTMLPurifier_Config::getURIDefinition ( $raw = false,
$optimized = false )

Retrieves object reference to the URI definition.

Parameters
bool$rawReturn a copy that has not been setup yet. Must be called before it's been setup, otherwise won't work.
bool$optimizedIf true, this method may return null, to indicate that a cached version of the modified definition object is available and no further edits are necessary. Consider using maybeGetRawURIDefinition, which is more explicitly named, instead.
Return values
HTMLPurifier_URIDefinition|null

◆ inherit()

static HTMLPurifier_Config::inherit ( HTMLPurifier_Config $config)
static

Creates a new config object that inherits from a previous one.

Parameters
HTMLPurifier_Config$configConfiguration object to inherit from.
Return values
HTMLPurifier_Configobject with $config as its parent.

◆ isFinalized()

HTMLPurifier_Config::isFinalized ( $error = false)

Checks whether or not the configuration object is finalized.

Parameters
string | bool$errorString error message, or false for no error
Return values
bool

◆ loadArray()

HTMLPurifier_Config::loadArray ( $config_array)

Loads configuration values from an array with the following structure: Namespace.Directive => Value.

Parameters
array$config_arrayConfiguration associative array

◆ loadArrayFromForm()

static HTMLPurifier_Config::loadArrayFromForm ( $array,
$index = false,
$allowed = true,
$mq_fix = true,
$schema = null )
static

Loads configuration values from $_GET/$_POST that were posted via ConfigForm.

Parameters
array$array$_GET or $_POST array to import
string | bool$indexIndex/name that the config variables are in
array | bool$allowedList of allowed namespaces/directives
bool$mq_fixBoolean whether or not to enable magic quotes fix
HTMLPurifier_ConfigSchema$schemaSchema to use, if not global copy
Return values
mixed

◆ loadIni()

HTMLPurifier_Config::loadIni ( $filename)

Loads configuration values from an ini file.

Parameters
string$filenameName of ini file

◆ maybeGetRawCSSDefinition()

HTMLPurifier_Config::maybeGetRawCSSDefinition ( )
Return values
HTMLPurifier_CSSDefinition|null

◆ maybeGetRawHTMLDefinition()

HTMLPurifier_Config::maybeGetRawHTMLDefinition ( )
Return values
HTMLPurifier_HTMLDefinition|null

◆ maybeGetRawURIDefinition()

HTMLPurifier_Config::maybeGetRawURIDefinition ( )
Return values
HTMLPurifier_URIDefinition|null

◆ mergeArrayFromForm()

HTMLPurifier_Config::mergeArrayFromForm ( $array,
$index = false,
$allowed = true,
$mq_fix = true )

Merges in configuration values from $_GET/$_POST to object.

NOT STATIC.

Parameters
array$array$_GET or $_POST array to import
string | bool$indexIndex/name that the config variables are in
array | bool$allowedList of allowed namespaces/directives
bool$mq_fixBoolean whether or not to enable magic quotes fix

◆ prepareArrayFromForm()

static HTMLPurifier_Config::prepareArrayFromForm ( $array,
$index = false,
$allowed = true,
$mq_fix = true,
$schema = null )
static

Prepares an array from a form into something usable for the more strict parts of HTMLPurifier_Config.

Parameters
array$array$_GET or $_POST array to import
string | bool$indexIndex/name that the config variables are in
array | bool$allowedList of allowed namespaces/directives
bool$mq_fixBoolean whether or not to enable magic quotes fix
HTMLPurifier_ConfigSchema$schemaSchema to use, if not global copy
Return values
array

◆ serialize()

HTMLPurifier_Config::serialize ( )

Returns a serialized form of the configuration object that can be reconstituted.

Return values
string

◆ set()

HTMLPurifier_Config::set ( $key,
$value,
$a = null )

Sets a value to configuration.

Parameters
string$keykey
mixed$valuevalue
mixed$a

◆ triggerError()

HTMLPurifier_Config::triggerError ( $msg,
$no )
protected

Produces a nicely formatted error message by supplying the stack frame information OUTSIDE of HTMLPurifier_Config.

Parameters
string$msgAn error message
int$noAn error number

Member Data Documentation

◆ $autoFinalize

HTMLPurifier_Config::$autoFinalize = true

Whether or not to automatically finalize the object if a read operation is done.

@type bool

◆ $chatty

HTMLPurifier_Config::$chatty = true

Set to false if you do not want line and file numbers in errors.

(useful when unit testing). This will also compress some errors and exceptions. @type bool

◆ $def

HTMLPurifier_Config::$def

Reference HTMLPurifier_ConfigSchema for value checking.

@type HTMLPurifier_ConfigSchema

Note
This is public for introspective purposes. Please don't abuse!

◆ $definitions

HTMLPurifier_Config::$definitions
protected

Indexed array of definitions.

@type HTMLPurifier_Definition[]

◆ $finalized

HTMLPurifier_Config::$finalized = false
protected

Whether or not config is finalized.

@type bool

◆ $parser

HTMLPurifier_Config::$parser = null
protected

◆ $plist

HTMLPurifier_Config::$plist
protected

Property list containing configuration directives.

@type array

◆ $serial

HTMLPurifier_Config::$serial
protected

Serial for entire configuration object.

@type string

◆ $serials

HTMLPurifier_Config::$serials = array()
protected

Namespace indexed array of serials for specific namespaces.

See also
getSerial() for more info. @type string[]

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