diff options
author | friendica <info@friendica.com> | 2015-01-01 22:33:28 -0800 |
---|---|---|
committer | friendica <info@friendica.com> | 2015-01-01 22:33:28 -0800 |
commit | 82d0a4af452015e870bdcea56f1008ea22d066b3 (patch) | |
tree | 3ad1db1aeb0dfdeb10a70b99da353fe3094f1d69 /library/HTMLPurifier/AttrDef/CSS/Ident.php | |
parent | 9a34e18319301e0a952f674899aeb58b424637a4 (diff) | |
parent | 68c612c597471404201099ecbc8b4082d152e18a (diff) | |
download | volse-hubzilla-82d0a4af452015e870bdcea56f1008ea22d066b3.tar.gz volse-hubzilla-82d0a4af452015e870bdcea56f1008ea22d066b3.tar.bz2 volse-hubzilla-82d0a4af452015e870bdcea56f1008ea22d066b3.zip |
Merge branch 'master' into trinidad
Diffstat (limited to 'library/HTMLPurifier/AttrDef/CSS/Ident.php')
-rw-r--r-- | library/HTMLPurifier/AttrDef/CSS/Ident.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/library/HTMLPurifier/AttrDef/CSS/Ident.php b/library/HTMLPurifier/AttrDef/CSS/Ident.php new file mode 100644 index 000000000..973002c17 --- /dev/null +++ b/library/HTMLPurifier/AttrDef/CSS/Ident.php @@ -0,0 +1,32 @@ +<?php + +/** + * Validates based on {ident} CSS grammar production + */ +class HTMLPurifier_AttrDef_CSS_Ident extends HTMLPurifier_AttrDef +{ + + /** + * @param string $string + * @param HTMLPurifier_Config $config + * @param HTMLPurifier_Context $context + * @return bool|string + */ + public function validate($string, $config, $context) + { + $string = trim($string); + + // early abort: '' and '0' (strings that convert to false) are invalid + if (!$string) { + return false; + } + + $pattern = '/^(-?[A-Za-z_][A-Za-z_\-0-9]*)$/'; + if (!preg_match($pattern, $string)) { + return false; + } + return $string; + } +} + +// vim: et sw=4 sts=4 |