| 
						 | 
						- <?php
 - 
 - /**
 -  * Allows Microformats2 classes but rejects any others
 -  */
 - class HTMLPurifier_AttrDef_HTML_Microformats2 extends HTMLPurifier_AttrDef_HTML_Nmtokens
 - {
 -     /**
 -      * @param string $string
 -      * @param HTMLPurifier_Config $config
 -      * @param HTMLPurifier_Context $context
 -      * @return bool|string
 -      */
 -     protected function split($string, $config, $context)
 -     {
 -         // really, this twiddle should be lazy loaded
 -         $name = $config->getDefinition('HTML')->doctype->name;
 -         if ($name == "XHTML 1.1" || $name == "XHTML 2.0") {
 -             return parent::split($string, $config, $context);
 -         } else {
 -             return preg_split('/\s+/', $string);
 -         }
 -     }
 - 
 -     /**
 -      * @param array $tokens
 -      * @param HTMLPurifier_Config $config
 -      * @param HTMLPurifier_Context $context
 -      * @return array
 -      */
 -     protected function filter($tokens, $config, $context)
 -     {
 -         $ret = array();
 -         foreach ($tokens as $token) {
 -             if(preg_match('/^([hpue]|dt)-[a-z\-]+$/', $token)) {
 -                 $ret[] = $token;
 -             }
 -         }
 -         return $ret;
 -     }
 - }
 
 
  |