root/afridex/plugins/Flutter/purifier_lib/HTMLPurifier.kses.php @ 23

Revision 21, 0.9 kB (checked in by admin, 18 years ago)
Line 
1<?php
2
3/**
4 * @file
5 * Emulation layer for code that used kses(), substituting in HTML Purifier.
6 */
7
8require_once dirname(__FILE__) . '/HTMLPurifier.auto.php';
9
10function kses($string, $allowed_html, $allowed_protocols = null) {
11    $config = HTMLPurifier_Config::createDefault();
12    $allowed_elements = array();
13    $allowed_attributes = array();
14    foreach ($allowed_html as $element => $attributes) {
15        $allowed_elements[$element] = true;
16        foreach ($attributes as $attribute => $x) {
17            $allowed_attributes["$element.$attribute"] = true;
18        }
19    }
20    $config->set('HTML', 'AllowedElements', $allowed_elements);
21    $config->set('HTML', 'AllowedAttributes', $allowed_attributes);
22    $allowed_schemes = array();
23    if ($allowed_protocols !== null) {
24        $config->set('URI', 'AllowedSchemes', $allowed_protocols);
25    }
26    $purifier = new HTMLPurifier($config);
27    return $purifier->purify($string);
28}
Note: See TracBrowser for help on using the browser.