ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
HTMLPurifier_AttrTransform_TargetBlank Class Reference

Adds target="blank" to all outbound links. More...

+ Inheritance diagram for HTMLPurifier_AttrTransform_TargetBlank:
+ Collaboration diagram for HTMLPurifier_AttrTransform_TargetBlank:

Public Member Functions

 __construct ()
 
 transform ($attr, $config, $context)
 
- Public Member Functions inherited from HTMLPurifier_AttrTransform
 transform ($attr, $config, $context)
 Abstract: makes changes to the attributes dependent on multiple values. More...
 
 prependCSS (&$attr, $css)
 Prepends CSS properties to the style attribute, creating the attribute if it doesn't exist. More...
 
 confiscateAttr (&$attr, $key)
 Retrieves and removes an attribute. More...
 

Private Attributes

 $parser
 HTMLPurifier_URIParser More...
 

Detailed Description

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

Definition at line 10 of file TargetBlank.php.

Constructor & Destructor Documentation

◆ __construct()

HTMLPurifier_AttrTransform_TargetBlank::__construct ( )

Definition at line 17 of file TargetBlank.php.

18  {
19  $this->parser = new HTMLPurifier_URIParser();
20  }
Parses a URI into the components and fragment identifier as specified by RFC 3986.
Definition: URIParser.php:7

Member Function Documentation

◆ transform()

HTMLPurifier_AttrTransform_TargetBlank::transform (   $attr,
  $config,
  $context 
)
Parameters
array$attr
HTMLPurifier_Config$config
HTMLPurifier_Context$context
Returns
array

Definition at line 28 of file TargetBlank.php.

References $config, and $url.

29  {
30  if (!isset($attr['href'])) {
31  return $attr;
32  }
33 
34  // XXX Kind of inefficient
35  $url = $this->parser->parse($attr['href']);
36  $scheme = $url->getSchemeObj($config, $context);
37 
38  if ($scheme->browsable && !$url->isBenign($config, $context)) {
39  $attr['target'] = '_blank';
40  }
41  return $attr;
42  }
$url

Field Documentation

◆ $parser

HTMLPurifier_AttrTransform_TargetBlank::$parser
private

HTMLPurifier_URIParser

Definition at line 15 of file TargetBlank.php.


The documentation for this class was generated from the following file: