diff --git a/library/HTMLPurifier/HTMLModule/Edit.php b/library/HTMLPurifier/HTMLModule/Edit.php new file mode 100644 index 00000000..e622baaf --- /dev/null +++ b/library/HTMLPurifier/HTMLModule/Edit.php @@ -0,0 +1,30 @@ + 'del | ins'); + + function HTMLPurifier_HTMLModule_Edit() { + foreach ($this->elements as $element) { + $this->info[$element] = new HTMLPurifier_ElementDef(); + $this->info[$element]->attr = array( + 0 => array('Common'), + 'cite' => 'URI', + // 'datetime' => 'Datetime' // Datetime not implemented + ); + $this->info[$element]->content_model = '#PCDATA | Inline ! #PCDATA | Flow'; + $this->info[$element]->content_model_type = 'chameleon'; + } + } + +} + +?> \ No newline at end of file diff --git a/library/HTMLPurifier/XHTMLDefinition.php b/library/HTMLPurifier/XHTMLDefinition.php index f3a730a8..ef101538 100644 --- a/library/HTMLPurifier/XHTMLDefinition.php +++ b/library/HTMLPurifier/XHTMLDefinition.php @@ -10,6 +10,7 @@ require_once 'HTMLPurifier/HTMLModule/Text.php'; require_once 'HTMLPurifier/HTMLModule/Hypertext.php'; require_once 'HTMLPurifier/HTMLModule/List.php'; require_once 'HTMLPurifier/HTMLModule/Presentation.php'; +require_once 'HTMLPurifier/HTMLModule/Edit.php'; /** * Next-generation HTML definition that will supplant HTMLPurifier_HTMLDefinition @@ -24,10 +25,11 @@ class HTMLPurifier_XHTMLDefinition extends HTMLPurifier_HTMLDefinition function HTMLPurifier_XHTMLDefinition($config) { - $this->modules['Text'] = new HTMLPurifier_HTMLModule_Text(); - $this->modules['Hypertext'] = new HTMLPurifier_HTMLModule_Hypertext(); - $this->modules['List'] = new HTMLPurifier_HTMLModule_List(); - $this->modules['Presentation'] = new HTMLPurifier_HTMLModule_Presentation(); + $this->modules['Text'] = new HTMLPurifier_HTMLModule_Text(); + $this->modules['Hypertext'] = new HTMLPurifier_HTMLModule_Hypertext(); + $this->modules['List'] = new HTMLPurifier_HTMLModule_List(); + $this->modules['Presentation'] = new HTMLPurifier_HTMLModule_Presentation(); + $this->modules['Edit'] = new HTMLPurifier_HTMLModule_Edit(); $this->attr_types = new HTMLPurifier_AttrTypes(); $this->attr_collection = new HTMLPurifier_AttrCollection(); @@ -117,6 +119,7 @@ class HTMLPurifier_XHTMLDefinition extends HTMLPurifier_HTMLDefinition case 'table': return new HTMLPurifier_ChildDef_Table(); case 'chameleon': + $value = explode('!', $value); return new HTMLPurifier_ChildDef_Chameleon($value[0], $value[1]); case 'custom': return new HTMLPurifier_ChildDef_Custom($value);