diff options
author | Aleksander Machniak <alec@alec.pl> | 2013-03-19 12:47:07 +0100 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2013-03-19 12:47:07 +0100 |
commit | 1e32540839683c1309db012c4d5b9aff35ec6ae3 (patch) | |
tree | 1517ac8543b6f3088b6a437a4fc85cf144b9d8ab /program/lib | |
parent | a8040cf0bd71aad66b6847e27d14fe302ef87e95 (diff) |
Add rel="noreferrer" for links in displayed messages (#1484686)
Diffstat (limited to 'program/lib')
-rw-r--r-- | program/lib/Roundcube/rcube_string_replacer.php | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/program/lib/Roundcube/rcube_string_replacer.php b/program/lib/Roundcube/rcube_string_replacer.php index 49a378166..b8768bc98 100644 --- a/program/lib/Roundcube/rcube_string_replacer.php +++ b/program/lib/Roundcube/rcube_string_replacer.php @@ -28,9 +28,10 @@ class rcube_string_replacer public $mailto_pattern; public $link_pattern; private $values = array(); + private $options = array(); - function __construct() + function __construct($options = array()) { // Simplified domain expression for UTF8 characters handling // Support unicode/punycode in top-level domain part @@ -44,6 +45,8 @@ class rcube_string_replacer ."@$utf_domain" // domain-part ."(\?[$url1$url2]+)?" // e.g. ?subject=test... .")/"; + + $this->options = $options; } /** @@ -89,10 +92,10 @@ class rcube_string_replacer if ($url) { $suffix = $this->parse_url_brackets($url); - $i = $this->add($prefix . html::a(array( - 'href' => $url_prefix . $url, - 'target' => '_blank' - ), rcube::Q($url)) . $suffix); + $attrib = (array)$this->options['link_attribs']; + $attrib['href'] = $url_prefix . $url; + + $i = $this->add($prefix . html::a($attrib, rcube::Q($url)) . $suffix); } // Return valid link for recognized schemes, otherwise |