single = $single; $this->max = $max; } /** * * @param string $string * @param HTMLPurifier_Config $config * @param HTMLPurifier_Context $context * @return bool|string */ public function validate($string, $config, $context) { $string = $this->parseCDATA ( $string ); if ($string === '') { return false; } $parts = explode ( ' ', $string ); // parseCDATA replaced \r, \t and \n $length = count ( $parts ); $final = ''; for($i = 0, $num = 0; $i < $length && $num < $this->max; $i ++) { if (ctype_space ( $parts [$i] )) { continue; } $result = $this->single->validate ( $parts [$i], $config, $context ); if ($result !== false) { $final .= $result . ' '; $num ++; } } if ($final === '') { return false; } return rtrim ( $final ); } } // vim: et sw=4 sts=4