mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2024-12-22 08:21:52 +00:00
3e4deabbb3
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
76 lines
2.6 KiB
PHP
76 lines
2.6 KiB
PHP
<?php
|
|
|
|
require_once 'common.php'; // load library
|
|
|
|
require_once 'HTMLPurifier/Printer/ConfigForm.php';
|
|
|
|
$config = HTMLPurifier_Config::loadArrayFromForm($_POST, 'config');
|
|
|
|
// you can do custom configuration!
|
|
if (file_exists('allConfigForm.settings.php')) {
|
|
include 'allConfigForm.settings.php';
|
|
}
|
|
|
|
$gen_config = HTMLPurifier_Config::createDefault();
|
|
|
|
$printer_config_form = new HTMLPurifier_Printer_ConfigForm(
|
|
'config',
|
|
'http://htmlpurifier.org/live/configdoc/plain.html#%s'
|
|
);
|
|
|
|
$purifier = new HTMLPurifier($config);
|
|
$html = isset($_POST['html']) ? $_POST['html'] : "";
|
|
$purified = $purifier->purify($html);
|
|
|
|
echo '<?xml version="1.0" encoding="UTF-8" ?>';
|
|
|
|
?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
|
<head>
|
|
<title>HTML Purifier All Config Form smoketest</title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
<style type="text/css">
|
|
.hp-config {margin-left:auto; margin-right:auto;}
|
|
.HTMLPurifier_Printer table {border-collapse:collapse;
|
|
border:1px solid #000; width:600px;
|
|
margin:1em auto;font-family:sans-serif;font-size:75%;}
|
|
.HTMLPurifier_Printer td, .HTMLPurifier_Printer th {padding:3px;
|
|
border:1px solid #000;background:#CCC; vertical-align: baseline;}
|
|
.HTMLPurifier_Printer th {text-align:left;background:#CCF;width:20%;}
|
|
.HTMLPurifier_Printer caption {font-size:1.5em; font-weight:bold;}
|
|
.HTMLPurifier_Printer .heavy {background:#99C;text-align:center;}
|
|
.HTMLPurifier_Printer .unsafe {background:#C99;}
|
|
dt {font-weight:bold;}
|
|
</style>
|
|
<link rel="stylesheet" href="../library/HTMLPurifier/Printer/ConfigForm.css" type="text/css" />
|
|
<script defer="defer" type="text/javascript" src="../library/HTMLPurifier/Printer/ConfigForm.js"></script>
|
|
</head>
|
|
<body>
|
|
|
|
<h1>HTML Purifier All Config Form Smoketest</h1>
|
|
|
|
<p>This prints config form for everything we support.</p>
|
|
|
|
<form method="post" action="" name="hp-configform">
|
|
<table style="width:100%">
|
|
<tr><th>Input</th><th>Output</th>
|
|
<tr><td style="width:50%">
|
|
<textarea name="html" style="width:100%" rows="15"><?php echo htmlspecialchars($html) ?></textarea>
|
|
</td><td style="width:50%">
|
|
<textarea name="result" style="width:100%" rows="15"><?php echo htmlspecialchars($purified) ?></textarea>
|
|
</td></tr>
|
|
</table>
|
|
<input type="submit" />
|
|
<?php
|
|
echo $printer_config_form->render($config);
|
|
?>
|
|
</form>
|
|
<pre><?php
|
|
echo htmlspecialchars(var_export($config->getAll(), true));
|
|
?></pre>
|
|
<?php
|
|
|
|
// vim: et sw=4 sts=4
|