4 * Implements special behavior for class attribute (normally NMTOKENS)
6 class HTMLPurifier_AttrDef_HTML_Class
extends HTMLPurifier_AttrDef_HTML_Nmtokens
8 protected function split($string, $config, $context) {
9 // really, this twiddle should be lazy loaded
10 $name = $config->getDefinition('HTML')->doctype
->name
;
11 if ($name == "XHTML 1.1" ||
$name == "XHTML 2.0") {
12 return parent
::split($string, $config, $context);
14 return preg_split('/\s+/', $string);
17 protected function filter($tokens, $config, $context) {
18 $allowed = $config->get('Attr.AllowedClasses');
19 $forbidden = $config->get('Attr.ForbiddenClasses');
21 foreach ($tokens as $token) {
23 ($allowed === null ||
isset($allowed[$token])) &&
24 !isset($forbidden[$token])
29 return array_keys($ret);