1
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2025-07-31 03:10:09 +02:00

[1.7.0] New compact syntax for AttrDef objects that can be used to instantiate new objects via make()

- Implemented make() for Enum and Bool
- Migrate classes over to this new syntax
- Add AttrDef_HTML_Bool unit test

git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@1088 48356398-32a2-884e-a903-53898d9a118a
This commit is contained in:
Edward Z. Yang
2007-05-23 00:39:07 +00:00
parent 818d0d7a23
commit 7579932948
14 changed files with 114 additions and 45 deletions

View File

@@ -45,6 +45,15 @@ class HTMLPurifier_AttrDef_Enum extends HTMLPurifier_AttrDef
return $result ? $string : false;
}
/**
* @param $string In form of comma-delimited list of case-insensitive
* valid values. Example: "foo,bar,baz"
*/
function make($string) {
$values = explode(',', $string);
return new HTMLPurifier_AttrDef_Enum($values);
}
}
?>

View File

@@ -11,13 +11,20 @@ class HTMLPurifier_AttrDef_HTML_Bool extends HTMLPurifier_AttrDef
var $name;
var $minimized = true;
function HTMLPurifier_AttrDef_HTML_Bool($name) {$this->name = $name;}
function HTMLPurifier_AttrDef_HTML_Bool($name = false) {$this->name = $name;}
function validate($string, $config, &$context) {
if (empty($string)) return false;
return $name;
}
/**
* @param $string Name of attribute
*/
function make($string) {
return new HTMLPurifier_AttrDef_HTML_Bool($string);
}
}
?>