diff options
Diffstat (limited to 'inc/3rdparty/htmlpurifier/HTMLPurifier/EntityLookup.php')
-rw-r--r-- | inc/3rdparty/htmlpurifier/HTMLPurifier/EntityLookup.php | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/inc/3rdparty/htmlpurifier/HTMLPurifier/EntityLookup.php b/inc/3rdparty/htmlpurifier/HTMLPurifier/EntityLookup.php new file mode 100644 index 00000000..cb3474e3 --- /dev/null +++ b/inc/3rdparty/htmlpurifier/HTMLPurifier/EntityLookup.php | |||
@@ -0,0 +1,48 @@ | |||
1 | <?php | ||
2 | |||
3 | /** | ||
4 | * Object that provides entity lookup table from entity name to character | ||
5 | */ | ||
6 | class HTMLPurifier_EntityLookup | ||
7 | { | ||
8 | /** | ||
9 | * Assoc array of entity name to character represented. | ||
10 | * @type array | ||
11 | */ | ||
12 | public $table; | ||
13 | |||
14 | /** | ||
15 | * Sets up the entity lookup table from the serialized file contents. | ||
16 | * @param bool $file | ||
17 | * @note The serialized contents are versioned, but were generated | ||
18 | * using the maintenance script generate_entity_file.php | ||
19 | * @warning This is not in constructor to help enforce the Singleton | ||
20 | */ | ||
21 | public function setup($file = false) | ||
22 | { | ||
23 | if (!$file) { | ||
24 | $file = HTMLPURIFIER_PREFIX . '/HTMLPurifier/EntityLookup/entities.ser'; | ||
25 | } | ||
26 | $this->table = unserialize(file_get_contents($file)); | ||
27 | } | ||
28 | |||
29 | /** | ||
30 | * Retrieves sole instance of the object. | ||
31 | * @param bool|HTMLPurifier_EntityLookup $prototype Optional prototype of custom lookup table to overload with. | ||
32 | * @return HTMLPurifier_EntityLookup | ||
33 | */ | ||
34 | public static function instance($prototype = false) | ||
35 | { | ||
36 | // no references, since PHP doesn't copy unless modified | ||
37 | static $instance = null; | ||
38 | if ($prototype) { | ||
39 | $instance = $prototype; | ||
40 | } elseif (!$instance) { | ||
41 | $instance = new HTMLPurifier_EntityLookup(); | ||
42 | $instance->setup(); | ||
43 | } | ||
44 | return $instance; | ||
45 | } | ||
46 | } | ||
47 | |||
48 | // vim: et sw=4 sts=4 | ||