diff options
Diffstat (limited to 'library/HTMLPurifier/AttrTransform/TargetBlank.php')
-rw-r--r-- | library/HTMLPurifier/AttrTransform/TargetBlank.php | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/library/HTMLPurifier/AttrTransform/TargetBlank.php b/library/HTMLPurifier/AttrTransform/TargetBlank.php deleted file mode 100644 index dd63ea89c..000000000 --- a/library/HTMLPurifier/AttrTransform/TargetBlank.php +++ /dev/null @@ -1,45 +0,0 @@ -<?php - -// must be called POST validation - -/** - * Adds target="blank" to all outbound links. This transform is - * only attached if Attr.TargetBlank is TRUE. This works regardless - * of whether or not Attr.AllowedFrameTargets - */ -class HTMLPurifier_AttrTransform_TargetBlank extends HTMLPurifier_AttrTransform -{ - /** - * @type HTMLPurifier_URIParser - */ - private $parser; - - public function __construct() - { - $this->parser = new HTMLPurifier_URIParser(); - } - - /** - * @param array $attr - * @param HTMLPurifier_Config $config - * @param HTMLPurifier_Context $context - * @return array - */ - public function transform($attr, $config, $context) - { - if (!isset($attr['href'])) { - return $attr; - } - - // XXX Kind of inefficient - $url = $this->parser->parse($attr['href']); - $scheme = $url->getSchemeObj($config, $context); - - if ($scheme->browsable && !$url->isBenign($config, $context)) { - $attr['target'] = '_blank'; - } - return $attr; - } -} - -// vim: et sw=4 sts=4 |