]> git.immae.eu Git - github/wallabag/wallabag.git/blame - inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/NameSync.php
remove autoload section in composer.json
[github/wallabag/wallabag.git] / inc / 3rdparty / htmlpurifier / HTMLPurifier / AttrTransform / NameSync.php
CommitLineData
d4949327
NL
1<?php\r
2\r
3/**\r
4 * Post-transform that performs validation to the name attribute; if\r
5 * it is present with an equivalent id attribute, it is passed through;\r
6 * otherwise validation is performed.\r
7 */\r
8class HTMLPurifier_AttrTransform_NameSync extends HTMLPurifier_AttrTransform\r
9{\r
10\r
11 public function __construct()\r
12 {\r
13 $this->idDef = new HTMLPurifier_AttrDef_HTML_ID();\r
14 }\r
15\r
16 /**\r
17 * @param array $attr\r
18 * @param HTMLPurifier_Config $config\r
19 * @param HTMLPurifier_Context $context\r
20 * @return array\r
21 */\r
22 public function transform($attr, $config, $context)\r
23 {\r
24 if (!isset($attr['name'])) {\r
25 return $attr;\r
26 }\r
27 $name = $attr['name'];\r
28 if (isset($attr['id']) && $attr['id'] === $name) {\r
29 return $attr;\r
30 }\r
31 $result = $this->idDef->validate($name, $config, $context);\r
32 if ($result === false) {\r
33 unset($attr['name']);\r
34 } else {\r
35 $attr['name'] = $result;\r
36 }\r
37 return $attr;\r
38 }\r
39}\r
40\r
41// vim: et sw=4 sts=4\r