1<?php
2
3/**
4 * XHTML 1.1 Object Module, defines elements for generic object inclusion
5 * @warning Users will commonly use <embed> to cater to legacy browsers: this
6 *      module does not allow this sort of behavior
7 */
8class HTMLPurifier_HTMLModule_Object extends HTMLPurifier_HTMLModule
9{
10    /**
11     * @type string
12     */
13    public $name = 'Object';
14
15    /**
16     * @type bool
17     */
18    public $safe = false;
19
20    /**
21     * @param HTMLPurifier_Config $config
22     */
23    public function setup($config)
24    {
25        $this->addElement(
26            'object',
27            'Inline',
28            'Optional: #PCDATA | Flow | param',
29            'Common',
30            array(
31                'archive' => 'URI',
32                'classid' => 'URI',
33                'codebase' => 'URI',
34                'codetype' => 'Text',
35                'data' => 'URI',
36                'declare' => 'Bool#declare',
37                'height' => 'Length',
38                'name' => 'CDATA',
39                'standby' => 'Text',
40                'tabindex' => 'Number',
41                'type' => 'ContentType',
42                'width' => 'Length'
43            )
44        );
45
46        $this->addElement(
47            'param',
48            false,
49            'Empty',
50            null,
51            array(
52                'id' => 'ID',
53                'name*' => 'Text',
54                'type' => 'Text',
55                'value' => 'Text',
56                'valuetype' => 'Enum#data,ref,object'
57            )
58        );
59    }
60}
61
62// vim: et sw=4 sts=4
63