mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2024-11-08 23:08:42 +00:00
ec59062a9d
- Optimize ConfigSchema by removing non-essential runtime data. We can probably optimize even more by collapsing object structures to arrays. - Removed validation data from ConfigSchema; this will be reimplemented on Interchange - Implement a sane Interchange composite hierarchy that doesn't use arrays - Implement StringHash -> Interchange -> ConfigSchema, and rewrite maintenance file to account for this git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@1615 48356398-32a2-884e-a903-53898d9a118a
33 lines
915 B
PHP
33 lines
915 B
PHP
#!/usr/bin/php
|
|
<?php
|
|
|
|
chdir(dirname(__FILE__));
|
|
require_once 'common.php';
|
|
require_once '../library/HTMLPurifier.auto.php';
|
|
assertCli();
|
|
|
|
/**
|
|
* @file
|
|
* Generates a schema cache file from the contents of
|
|
* library/HTMLPurifier/ConfigSchema/schema.ser
|
|
*/
|
|
|
|
$target = '../library/HTMLPurifier/ConfigSchema/schema.ser';
|
|
$FS = new FSTools();
|
|
|
|
$files = $FS->globr('../library/HTMLPurifier/ConfigSchema/schema', '*.txt');
|
|
|
|
$parser = new HTMLPurifier_ConfigSchema_StringHashParser();
|
|
$builder = new HTMLPurifier_ConfigSchema_InterchangeBuilder();
|
|
$interchange = new HTMLPurifier_ConfigSchema_Interchange();
|
|
foreach ($files as $file) {
|
|
$builder->build($interchange, $parser->parseFile($file));
|
|
}
|
|
|
|
$schema_builder = new HTMLPurifier_ConfigSchema_Builder_ConfigSchema();
|
|
$schema = $schema_builder->build($interchange);
|
|
|
|
echo "Saving schema... ";
|
|
file_put_contents($target, serialize($schema));
|
|
echo "done!\n";
|