aboutsummaryrefslogtreecommitdiffhomepage
path: root/inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php
diff options
context:
space:
mode:
Diffstat (limited to 'inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php')
-rw-r--r--inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php b/inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php
new file mode 100644
index 00000000..a874d0f7
--- /dev/null
+++ b/inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/Name.php
@@ -0,0 +1,33 @@
1<?php
2
3/**
4 * Pre-transform that changes deprecated name attribute to ID if necessary
5 */
6class HTMLPurifier_AttrTransform_Name extends HTMLPurifier_AttrTransform
7{
8
9 /**
10 * @param array $attr
11 * @param HTMLPurifier_Config $config
12 * @param HTMLPurifier_Context $context
13 * @return array
14 */
15 public function transform($attr, $config, $context)
16 {
17 // Abort early if we're using relaxed definition of name
18 if ($config->get('HTML.Attr.Name.UseCDATA')) {
19 return $attr;
20 }
21 if (!isset($attr['name'])) {
22 return $attr;
23 }
24 $id = $this->confiscateAttr($attr, 'name');
25 if (isset($attr['id'])) {
26 return $attr;
27 }
28 $attr['id'] = $id;
29 return $attr;
30 }
31}
32
33// vim: et sw=4 sts=4