You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
923 B
30 lines
923 B
<?php |
|
|
|
/** |
|
* @file |
|
* Emulation layer for code that used kses(), substituting in HTML Purifier. |
|
*/ |
|
|
|
require_once dirname(__FILE__) . '/HTMLPurifier.auto.php'; |
|
|
|
function kses($string, $allowed_html, $allowed_protocols = null) |
|
{ |
|
$config = HTMLPurifier_Config::createDefault(); |
|
$allowed_elements = array(); |
|
$allowed_attributes = array(); |
|
foreach ($allowed_html as $element => $attributes) { |
|
$allowed_elements[$element] = true; |
|
foreach ($attributes as $attribute => $x) { |
|
$allowed_attributes["$element.$attribute"] = true; |
|
} |
|
} |
|
$config->set('HTML.AllowedElements', $allowed_elements); |
|
$config->set('HTML.AllowedAttributes', $allowed_attributes); |
|
if ($allowed_protocols !== null) { |
|
$config->set('URI.AllowedSchemes', $allowed_protocols); |
|
} |
|
$purifier = new HTMLPurifier($config); |
|
return $purifier->purify($string); |
|
} |
|
|
|
// vim: et sw=4 sts=4
|
|
|