<?php // must be called POST validation /** * Transform that supplies default values for the src and alt attributes * in img tags, as well as prevents the img tag from being removed * because of a missing alt tag. This needs to be registered as both * a pre and post attribute transform. */ class HTMLPurifier_AttrTransform_ImgRequired extends HTMLPurifier_AttrTransform { public function transform($attr, $config, $context) { $src = true; if (!isset($attr['src'])) { if ($config->get('Core', 'RemoveInvalidImg')) return $attr; $attr['src'] = $config->get('Attr', 'DefaultInvalidImage'); $src = false; } if (!isset($attr['alt'])) { if ($src) { $attr['alt'] = basename($attr['src']); } else { $attr['alt'] = $config->get('Attr', 'DefaultInvalidImageAlt'); } } return $attr; } }