golden hour
/var/www/html/wp-content/plugins/nextgen-gallery/vendor/ezyang/htmlpurifier/library/HTMLPurifier
⬆️ Go Up
Upload
File/Folder
Size
Actions
Arborize.php
2.49 KB
Del
OK
AttrCollections.php
4.75 KB
Del
OK
AttrDef
-
Del
OK
AttrDef.php
5.07 KB
Del
OK
AttrTransform
-
Del
OK
AttrTransform.php
1.94 KB
Del
OK
AttrTypes.php
3.58 KB
Del
OK
AttrValidator.php
6.42 KB
Del
OK
Bootstrap.php
4.5 KB
Del
OK
CSSDefinition.php
18.62 KB
Del
OK
ChildDef
-
Del
OK
ChildDef.php
1.52 KB
Del
OK
Config.php
30.91 KB
Del
OK
ConfigSchema
-
Del
OK
ConfigSchema.php
5.76 KB
Del
OK
ContentSets.php
5.51 KB
Del
OK
Context.php
2.57 KB
Del
OK
Definition.php
1.33 KB
Del
OK
DefinitionCache
-
Del
OK
DefinitionCache.php
3.82 KB
Del
OK
DefinitionCacheFactory.php
3.13 KB
Del
OK
Doctype.php
1.54 KB
Del
OK
DoctypeRegistry.php
4.13 KB
Del
OK
ElementDef.php
7.35 KB
Del
OK
Encoder.php
25.05 KB
Del
OK
EntityLookup
-
Del
OK
EntityLookup.php
1.39 KB
Del
OK
EntityParser.php
9.75 KB
Del
OK
ErrorCollector.php
7.45 KB
Del
OK
ErrorStruct.php
1.85 KB
Del
OK
Exception.php
177 B
Del
OK
Filter
-
Del
OK
Filter.php
1.59 KB
Del
OK
Generator.php
10.01 KB
Del
OK
HTMLDefinition.php
17.33 KB
Del
OK
HTMLModule
-
Del
OK
HTMLModule.php
9.93 KB
Del
OK
HTMLModuleManager.php
15.57 KB
Del
OK
IDAccumulator.php
1.61 KB
Del
OK
Injector
-
Del
OK
Injector.php
8.79 KB
Del
OK
Language
-
Del
OK
Language.php
5.92 KB
Del
OK
LanguageFactory.php
6.46 KB
Del
OK
Length.php
3.78 KB
Del
OK
Lexer
-
Del
OK
Lexer.php
13.12 KB
Del
OK
Node
-
Del
OK
Node.php
1.25 KB
Del
OK
PercentEncoder.php
3.48 KB
Del
OK
Printer
-
Del
OK
Printer.php
5.76 KB
Del
OK
PropertyList.php
2.72 KB
Del
OK
PropertyListIterator.php
865 B
Del
OK
Queue.php
1.51 KB
Del
OK
Strategy
-
Del
OK
Strategy.php
762 B
Del
OK
StringHash.php
1.04 KB
Del
OK
StringHashParser.php
3.56 KB
Del
OK
TagTransform
-
Del
OK
TagTransform.php
1.07 KB
Del
OK
Token
-
Del
OK
Token.php
2.17 KB
Del
OK
TokenFactory.php
3.03 KB
Del
OK
URI.php
10.35 KB
Del
OK
URIDefinition.php
3.35 KB
Del
OK
URIFilter
-
Del
OK
URIFilter.php
2.31 KB
Del
OK
URIParser.php
2.24 KB
Del
OK
URIScheme
-
Del
OK
URIScheme.php
3.4 KB
Del
OK
URISchemeRegistry.php
2.35 KB
Del
OK
UnitConverter.php
9.89 KB
Del
OK
VarParser
-
Del
OK
VarParser.php
5.85 KB
Del
OK
VarParserException.php
157 B
Del
OK
Zipper.php
4.34 KB
Del
OK
Edit: ContentSets.php
<?php /** * @todo Unit test */ class HTMLPurifier_ContentSets { /** * List of content set strings (pipe separators) indexed by name. * @type array */ public $info = array(); /** * List of content set lookups (element => true) indexed by name. * @type array * @note This is in HTMLPurifier_HTMLDefinition->info_content_sets */ public $lookup = array(); /** * Synchronized list of defined content sets (keys of info). * @type array */ protected $keys = array(); /** * Synchronized list of defined content values (values of info). * @type array */ protected $values = array(); /** * Merges in module's content sets, expands identifiers in the content * sets and populates the keys, values and lookup member variables. * @param HTMLPurifier_HTMLModule[] $modules List of HTMLPurifier_HTMLModule */ public function __construct($modules) { if (!is_array($modules)) { $modules = array($modules); } // populate content_sets based on module hints // sorry, no way of overloading foreach ($modules as $module) { foreach ($module->content_sets as $key => $value) { $temp = $this->convertToLookup($value); if (isset($this->lookup[$key])) { // add it into the existing content set $this->lookup[$key] = array_merge($this->lookup[$key], $temp); } else { $this->lookup[$key] = $temp; } } } $old_lookup = false; while ($old_lookup !== $this->lookup) { $old_lookup = $this->lookup; foreach ($this->lookup as $i => $set) { $add = array(); foreach ($set as $element => $x) { if (isset($this->lookup[$element])) { $add += $this->lookup[$element]; unset($this->lookup[$i][$element]); } } $this->lookup[$i] += $add; } } foreach ($this->lookup as $key => $lookup) { $this->info[$key] = implode(' | ', array_keys($lookup)); } $this->keys = array_keys($this->info); $this->values = array_values($this->info); } /** * Accepts a definition; generates and assigns a ChildDef for it * @param HTMLPurifier_ElementDef $def HTMLPurifier_ElementDef reference * @param HTMLPurifier_HTMLModule $module Module that defined the ElementDef */ public function generateChildDef(&$def, $module) { if (!empty($def->child)) { // already done! return; } $content_model = $def->content_model; if (is_string($content_model)) { // Assume that $this->keys is alphanumeric $def->content_model = preg_replace_callback( '/\b(' . implode('|', $this->keys) . ')\b/', array($this, 'generateChildDefCallback'), $content_model ); //$def->content_model = str_replace( // $this->keys, $this->values, $content_model); } $def->child = $this->getChildDef($def, $module); } public function generateChildDefCallback($matches) { return $this->info[$matches[0]]; } /** * Instantiates a ChildDef based on content_model and content_model_type * member variables in HTMLPurifier_ElementDef * @note This will also defer to modules for custom HTMLPurifier_ChildDef * subclasses that need content set expansion * @param HTMLPurifier_ElementDef $def HTMLPurifier_ElementDef to have ChildDef extracted * @param HTMLPurifier_HTMLModule $module Module that defined the ElementDef * @return HTMLPurifier_ChildDef corresponding to ElementDef */ public function getChildDef($def, $module) { $value = $def->content_model; if (is_object($value)) { trigger_error( 'Literal object child definitions should be stored in '. 'ElementDef->child not ElementDef->content_model', E_USER_NOTICE ); return $value; } switch ($def->content_model_type) { case 'required': return new HTMLPurifier_ChildDef_Required($value); case 'optional': return new HTMLPurifier_ChildDef_Optional($value); case 'empty': return new HTMLPurifier_ChildDef_Empty(); case 'custom': return new HTMLPurifier_ChildDef_Custom($value); } // defer to its module $return = false; if ($module->defines_child_def) { // save a func call $return = $module->getChildDef($def); } if ($return !== false) { return $return; } // error-out trigger_error( 'Could not determine which ChildDef class to instantiate', E_USER_ERROR ); return false; } /** * Converts a string list of elements separated by pipes into * a lookup array. * @param string $string List of elements * @return array Lookup array of elements */ protected function convertToLookup($string) { $array = explode('|', str_replace(' ', '', $string)); $ret = array(); foreach ($array as $k) { $ret[$k] = true; } return $ret; } } // vim: et sw=4 sts=4
Save