1: | <?php |
2: | |
3: | /** |
4: | * Decorator which enables CSS properties to be disabled for specific elements. |
5: | */ |
6: | class HTMLPurifier_AttrDef_CSS_DenyElementDecorator extends HTMLPurifier_AttrDef |
7: | { |
8: | /** |
9: | * @type HTMLPurifier_AttrDef |
10: | */ |
11: | public $def; |
12: | /** |
13: | * @type string |
14: | */ |
15: | public $element; |
16: | |
17: | /** |
18: | * @param HTMLPurifier_AttrDef $def Definition to wrap |
19: | * @param string $element Element to deny |
20: | */ |
21: | public function __construct($def, $element) |
22: | { |
23: | $this->def = $def; |
24: | $this->element = $element; |
25: | } |
26: | |
27: | /** |
28: | * Checks if CurrentToken is set and equal to $this->element |
29: | * @param string $string |
30: | * @param HTMLPurifier_Config $config |
31: | * @param HTMLPurifier_Context $context |
32: | * @return bool|string |
33: | */ |
34: | public function validate($string, $config, $context) |
35: | { |
36: | $token = $context->get('CurrentToken', true); |
37: | if ($token && $token->name == $this->element) { |
38: | return false; |
39: | } |
40: | return $this->def->validate($string, $config, $context); |
41: | } |
42: | } |
43: | |
44: | // vim: et sw=4 sts=4 |
45: |