ILIAS  Release_4_4_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
HTMLPurifier_AttrTransform Class Reference

Processes an entire attribute array for corrections needing multiple values. More...

+ Inheritance diagram for HTMLPurifier_AttrTransform:
+ Collaboration diagram for HTMLPurifier_AttrTransform:

Public Member Functions

 transform ($attr, $config, $context)
 Abstract: makes changes to the attributes dependent on multiple values.
 prependCSS (&$attr, $css)
 Prepends CSS properties to the style attribute, creating the attribute if it doesn't exist.
 confiscateAttr (&$attr, $key)
 Retrieves and removes an attribute.

Detailed Description

Processes an entire attribute array for corrections needing multiple values.

Occasionally, a certain attribute will need to be removed and popped onto another value. Instead of creating a complex return syntax for HTMLPurifier_AttrDef, we just pass the whole attribute array to a specialized object and have that do the special work. That is the family of HTMLPurifier_AttrTransform.

An attribute transformation can be assigned to run before or after HTMLPurifier_AttrDef validation. See HTMLPurifier_HTMLDefinition for more details.

Definition at line 17 of file AttrTransform.php.

Member Function Documentation

HTMLPurifier_AttrTransform::confiscateAttr ( $attr,
  $key 
)

Retrieves and removes an attribute.

Parameters
$attrAttribute array to process (passed by reference)
$keyKey of attribute to confiscate

Definition at line 47 of file AttrTransform.php.

Referenced by HTMLPurifier_AttrTransform_Background\transform(), HTMLPurifier_AttrTransform_Border\transform(), HTMLPurifier_AttrTransform_BgColor\transform(), HTMLPurifier_AttrTransform_Name\transform(), HTMLPurifier_AttrTransform_Length\transform(), and HTMLPurifier_AttrTransform_ImgSpace\transform().

{
if (!isset($attr[$key])) return null;
$value = $attr[$key];
unset($attr[$key]);
return $value;
}

+ Here is the caller graph for this function:

HTMLPurifier_AttrTransform::prependCSS ( $attr,
  $css 
)

Prepends CSS properties to the style attribute, creating the attribute if it doesn't exist.

Parameters
$attrAttribute array to process (passed by reference)
$cssCSS to prepend

Definition at line 37 of file AttrTransform.php.

Referenced by HTMLPurifier_AttrTransform_Background\transform(), HTMLPurifier_AttrTransform_Border\transform(), HTMLPurifier_AttrTransform_BgColor\transform(), HTMLPurifier_AttrTransform_Length\transform(), HTMLPurifier_AttrTransform_ImgSpace\transform(), HTMLPurifier_AttrTransform_BoolToCSS\transform(), and HTMLPurifier_AttrTransform_EnumToCSS\transform().

{
$attr['style'] = isset($attr['style']) ? $attr['style'] : '';
$attr['style'] = $css . $attr['style'];
}

+ Here is the caller graph for this function:


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