HumHub Documentation (unofficial)

HTMLPurifier_AttrDef_CSS_Composite extends HTMLPurifier_AttrDef
in package

Allows multiple validators to attempt to validate attribute.

Composite is just what it sounds like: a composite of many validators. This means that multiple HTMLPurifier_AttrDef objects will have a whack at the string. If one of them passes, that's what is returned. This is especially useful for CSS values, which often are a choice between an enumerated set of predefined values or a flexible data type.

Table of Contents

Properties

$defs  : mixed
List of objects that may process strings.
$minimized  : mixed
Tells us whether or not an HTML attribute is minimized.
$required  : mixed
Tells us whether or not an HTML attribute is required.

Methods

__construct()  : mixed
make()  : HTMLPurifier_AttrDef
Factory method for creating this class from a string.
parseCDATA()  : mixed
Convenience method that parses a string as if it were CDATA.
validate()  : bool|string
Validates and cleans passed string according to a definition.
expandCSSEscape()  : mixed
Parses a possibly escaped CSS string and returns the "pure" version of it.
mungeRgb()  : string
Removes spaces from rgb(0, 0, 0) so that shorthand CSS properties work properly. THIS IS A HACK!

Properties

$defs

List of objects that may process strings.

public mixed $defs
Tags
type

HTMLPurifier_AttrDef[]

todo

Make protected

$minimized

Tells us whether or not an HTML attribute is minimized.

public mixed $minimized = \false

Has no meaning in other contexts.

Tags
type

bool

$required

Tells us whether or not an HTML attribute is required.

public mixed $required = \false

Has no meaning in other contexts

Tags
type

bool

Methods

make()

Factory method for creating this class from a string.

public make(string $string) : HTMLPurifier_AttrDef
Parameters
$string : string

String construction info

Return values
HTMLPurifier_AttrDef

Created AttrDef object corresponding to $string

parseCDATA()

Convenience method that parses a string as if it were CDATA.

public parseCDATA(mixed $string) : mixed

This method process a string in the manner specified at http://www.w3.org/TR/html4/types.html#h-6.2 by removing leading and trailing whitespace, ignoring line feeds, and replacing carriage returns and tabs with spaces. While most useful for HTML attributes specified as CDATA, it can also be applied to most CSS values.

Parameters
$string : mixed
Tags
note

This method is not entirely standards compliant, as trim() removes more types of whitespace than specified in the spec. In practice, this is rarely a problem, as those extra characters usually have already been removed by HTMLPurifier_Encoder.

warning

This processing is inconsistent with XML's whitespace handling as specified by section 3.3.3 and referenced XHTML 1.0 section 4.7. However, note that we are NOT necessarily parsing XML, thus, this behavior may still be correct. We assume that newlines have been normalized.

expandCSSEscape()

Parses a possibly escaped CSS string and returns the "pure" version of it.

protected expandCSSEscape(mixed $string) : mixed
Parameters
$string : mixed

mungeRgb()

Removes spaces from rgb(0, 0, 0) so that shorthand CSS properties work properly. THIS IS A HACK!

protected mungeRgb(string $string) : string
Parameters
$string : string

a CSS colour definition

Return values
string

        
On this page

Search results