1
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2025-10-14 21:54:24 +02:00
Files
php-htmlpurifier/library/HTMLPurifier/AttrDef/ID.php
Edward Z. Yang d243545142 Compat changes with earlier versions of PHP.
git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@139 48356398-32a2-884e-a903-53898d9a118a
2006-08-01 01:57:22 +00:00

37 lines
840 B
PHP

<?php
require_once 'HTMLPurifier/AttrDef.php';
require_once 'HTMLPurifier/IDAccumulator.php';
class HTMLPurifier_AttrDef_ID extends HTMLPurifier_AttrDef
{
function validate($id, &$accumulator) {
$id = @ (string) $id; // sanity check
if ($id === '') return false;
if (isset($accumulator->ids[$id])) return false;
// we purposely avoid using regex, hopefully this is faster
if (ctype_alpha($id)) {
$result = true;
} else {
if (!ctype_alpha(@$id[0])) return false;
$trim = trim(
$id,
'A..Za..z0..9:-._'
);
$result = ($trim === '');
}
if ($result) $accumulator->add($id);
return $result;
}
}
?>