]> git.mxchange.org Git - friendica.git/blob - vendor/ezyang/htmlpurifier/library/HTMLPurifier/AttrDef/CSS/TextDecoration.php
Replace existing autoloader with Composer-supplied
[friendica.git] / vendor / ezyang / htmlpurifier / library / HTMLPurifier / AttrDef / CSS / TextDecoration.php
1 <?php
2
3 /**
4  * Validates the value for the CSS property text-decoration
5  * @note This class could be generalized into a version that acts sort of
6  *       like Enum except you can compound the allowed values.
7  */
8 class HTMLPurifier_AttrDef_CSS_TextDecoration extends HTMLPurifier_AttrDef
9 {
10
11     /**
12      * @param string $string
13      * @param HTMLPurifier_Config $config
14      * @param HTMLPurifier_Context $context
15      * @return bool|string
16      */
17     public function validate($string, $config, $context)
18     {
19         static $allowed_values = array(
20             'line-through' => true,
21             'overline' => true,
22             'underline' => true,
23         );
24
25         $string = strtolower($this->parseCDATA($string));
26
27         if ($string === 'none') {
28             return $string;
29         }
30
31         $parts = explode(' ', $string);
32         $final = '';
33         foreach ($parts as $part) {
34             if (isset($allowed_values[$part])) {
35                 $final .= $part . ' ';
36             }
37         }
38         $final = rtrim($final);
39         if ($final === '') {
40             return false;
41         }
42         return $final;
43     }
44 }
45
46 // vim: et sw=4 sts=4