]> git.immae.eu Git - github/wallabag/wallabag.git/blame - inc/3rdparty/htmlpurifier/HTMLPurifier/AttrTransform/ImgRequired.php
remove autoload section in composer.json
[github/wallabag/wallabag.git] / inc / 3rdparty / htmlpurifier / HTMLPurifier / AttrTransform / ImgRequired.php
CommitLineData
d4949327
NL
1<?php\r
2\r
3// must be called POST validation\r
4\r
5/**\r
6 * Transform that supplies default values for the src and alt attributes\r
7 * in img tags, as well as prevents the img tag from being removed\r
8 * because of a missing alt tag. This needs to be registered as both\r
9 * a pre and post attribute transform.\r
10 */\r
11class HTMLPurifier_AttrTransform_ImgRequired extends HTMLPurifier_AttrTransform\r
12{\r
13\r
14 /**\r
15 * @param array $attr\r
16 * @param HTMLPurifier_Config $config\r
17 * @param HTMLPurifier_Context $context\r
18 * @return array\r
19 */\r
20 public function transform($attr, $config, $context)\r
21 {\r
22 $src = true;\r
23 if (!isset($attr['src'])) {\r
24 if ($config->get('Core.RemoveInvalidImg')) {\r
25 return $attr;\r
26 }\r
27 $attr['src'] = $config->get('Attr.DefaultInvalidImage');\r
28 $src = false;\r
29 }\r
30\r
31 if (!isset($attr['alt'])) {\r
32 if ($src) {\r
33 $alt = $config->get('Attr.DefaultImageAlt');\r
34 if ($alt === null) {\r
35 // truncate if the alt is too long\r
36 $attr['alt'] = substr(basename($attr['src']), 0, 40);\r
37 } else {\r
38 $attr['alt'] = $alt;\r
39 }\r
40 } else {\r
41 $attr['alt'] = $config->get('Attr.DefaultInvalidImageAlt');\r
42 }\r
43 }\r
44 return $attr;\r
45 }\r
46}\r
47\r
48// vim: et sw=4 sts=4\r