Newer
Older
* Classify links as internal or external and set the class attribute
* accordingly.
*/
class HTMLPurifier_Injector_ClassifyLinks extends HTMLPurifier_Injector
{
public $name = 'ClassifyLinks';
public $needed = ['a' => ['href', 'class', 'target']];
public function handleElement(&$token)
{
if ($token->name === 'a' && isset($token->attr['href'])) {
$is_link_intern = isLinkIntern($token->attr['href']);
if ($is_link_intern) {
$token->attr['class'] = 'link-intern';
} elseif (strpos($token->attr['href'], 'mailto:') !== 0) {
$token->attr['class'] = 'link-extern';
$token->attr['target'] = '_blank';
}
}
}
}