1
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2025-07-30 19:00:10 +02:00

Commit live demo, implement unified interface, and fix some security bugs (involving forgotten calls to strategies).

git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@238 48356398-32a2-884e-a903-53898d9a118a
This commit is contained in:
Edward Z. Yang
2006-08-14 00:27:15 +00:00
parent b5ff592157
commit 35fa08420d
6 changed files with 97 additions and 4 deletions

View File

@@ -18,9 +18,12 @@
* See /docs/spec.txt for more details.
*/
require_once 'HTMLPurifier/ConfigDef.php';
require_once 'HTMLPurifier/Config.php';
require_once 'HTMLPurifier/Lexer.php';
require_once 'HTMLPurifier/Definition.php';
require_once 'HTMLPurifier/Generator.php';
require_once 'HTMLPurifier/Strategy/Core.php';
/**
* Main library execution class.
@@ -32,12 +35,14 @@ require_once 'HTMLPurifier/Generator.php';
class HTMLPurifier
{
var $config;
/**
* Initializes the purifier.
* @param $config Configuration for all instances of the purifier
*/
function HTMLPurifier($config = null) {
// unimplemented
$this->config = $config ? $config : HTMLPurifier_Config::createDefault();
}
/**
@@ -48,7 +53,15 @@ class HTMLPurifier
* @return Purified HTML
*/
function purify($html, $config = null) {
// unimplemented
$config = $config ? $config : $this->config;
$lexer = HTMLPurifier_Lexer::create();
$strategy = new HTMLPurifier_Strategy_Core();
$generator = new HTMLPurifier_Generator();
return $generator->generateFromTokens(
$strategy->execute(
$lexer->tokenizeHTML($html)
)
);
}
}