first commit
This commit is contained in:
45
htmlpurifier-4.10.0/maintenance/generate-schema-cache.php
Executable file
45
htmlpurifier-4.10.0/maintenance/generate-schema-cache.php
Executable file
@ -0,0 +1,45 @@
|
||||
#!/usr/bin/php
|
||||
<?php
|
||||
|
||||
require_once dirname(__FILE__) . '/common.php';
|
||||
require_once dirname(__FILE__) . '/../library/HTMLPurifier.auto.php';
|
||||
assertCli();
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Generates a schema cache file, saving it to
|
||||
* library/HTMLPurifier/ConfigSchema/schema.ser.
|
||||
*
|
||||
* This should be run when new configuration options are added to
|
||||
* HTML Purifier. A cached version is available via the repository
|
||||
* so this does not normally have to be regenerated.
|
||||
*
|
||||
* If you have a directory containing custom configuration schema files,
|
||||
* you can simple add a path to that directory as a parameter to
|
||||
* this, and they will get included.
|
||||
*/
|
||||
|
||||
$target = dirname(__FILE__) . '/../library/HTMLPurifier/ConfigSchema/schema.ser';
|
||||
|
||||
$builder = new HTMLPurifier_ConfigSchema_InterchangeBuilder();
|
||||
$interchange = new HTMLPurifier_ConfigSchema_Interchange();
|
||||
|
||||
$builder->buildDir($interchange);
|
||||
|
||||
$loader = dirname(__FILE__) . '/../config-schema.php';
|
||||
if (file_exists($loader)) include $loader;
|
||||
foreach ($_SERVER['argv'] as $i => $dir) {
|
||||
if ($i === 0) continue;
|
||||
$builder->buildDir($interchange, realpath($dir));
|
||||
}
|
||||
|
||||
$interchange->validate();
|
||||
|
||||
$schema_builder = new HTMLPurifier_ConfigSchema_Builder_ConfigSchema();
|
||||
$schema = $schema_builder->build($interchange);
|
||||
|
||||
echo "Saving schema... ";
|
||||
file_put_contents($target, serialize($schema));
|
||||
echo "done!\n";
|
||||
|
||||
// vim: et sw=4 sts=4
|
Reference in New Issue
Block a user