mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-26 16:48:49 +01:00
on activate_links, use preg_replace_callback as we experienced problems with https links when rebuilding links
This commit is contained in:
parent
9afd1976a9
commit
08287dd1ce
@ -211,9 +211,11 @@ class html
|
|||||||
$optBracket = '';
|
$optBracket = '';
|
||||||
$optBracket = '(>|>)';
|
$optBracket = '(>|>)';
|
||||||
$Expr = '/' .$optBracket0. $NotAnchor . $Protocol . $Domain . $Subdir . $optBracket . '/i';
|
$Expr = '/' .$optBracket0. $NotAnchor . $Protocol . $Domain . $Subdir . $optBracket . '/i';
|
||||||
|
// use preg_replace_callback as we experienced problems with https links
|
||||||
$result2 = preg_replace( $Expr, "$1<a href=\"$2$3$4$5\" target=\"_blank\">$4$5</a>$6", $result );
|
$result2 = preg_replace_callback( $Expr, function ($match) {
|
||||||
//$result = preg_replace( $Expr, "<a href=\"$1$2$3$4\" target=\"_blank\">$2$3$4</a>$5 ", $result );
|
//error_log(__METHOD__.__LINE__.array2string($match));
|
||||||
|
return $match[1]."<a href=\"".($match[2]&&!$match[3]?$match[2]:'').($match[3]?$match[3]:'').$match[4].$match[5]."\" target=\"_blank\">".$match[4].$match[5]."</a>".$match[6];
|
||||||
|
}, $result );
|
||||||
//error_log(__METHOD__.__LINE__.array2string($Expr));
|
//error_log(__METHOD__.__LINE__.array2string($Expr));
|
||||||
//error_log(__METHOD__.__LINE__.array2string($result2));
|
//error_log(__METHOD__.__LINE__.array2string($result2));
|
||||||
// First match things beginning with http:// (or other protocols)
|
// First match things beginning with http:// (or other protocols)
|
||||||
@ -221,9 +223,11 @@ class html
|
|||||||
$Domain = '([\w-]+\.[\w-.]+)';
|
$Domain = '([\w-]+\.[\w-.]+)';
|
||||||
$Subdir = '([\w\-\.,@?^=%&;:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
|
$Subdir = '([\w\-\.,@?^=%&;:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
|
||||||
$Expr = '/' . $NotAnchor . $Protocol . $Domain . $Subdir . '/i';
|
$Expr = '/' . $NotAnchor . $Protocol . $Domain . $Subdir . '/i';
|
||||||
|
// use preg_replace_callback as we experienced problems with https links
|
||||||
$result3 = preg_replace( $Expr, "<a href=\"$1$2$3$4\" target=\"_blank\">$3$4</a>", $result2 );
|
$result3 = preg_replace_callback( $Expr, function ($match) {
|
||||||
//$result = preg_replace( $Expr, "<a href=\"$1$2$3$4\" target=\"_blank\">$2$3$4</a>$5 ", $result );
|
//error_log(__METHOD__.__LINE__.array2string($match));
|
||||||
|
return "<a href=\"".($match[1]&&!$match[2]?$match[1]:'').($match[2]?$match[2]:'').$match[3].$match[4]."\" target=\"_blank\">".$match[3].$match[4]."</a>";
|
||||||
|
}, $result2 );
|
||||||
//error_log(__METHOD__.__LINE__.array2string($Expr));
|
//error_log(__METHOD__.__LINE__.array2string($Expr));
|
||||||
//error_log(__METHOD__.__LINE__.array2string($result3));
|
//error_log(__METHOD__.__LINE__.array2string($result3));
|
||||||
// Now match things beginning with www.
|
// Now match things beginning with www.
|
||||||
|
Loading…
Reference in New Issue
Block a user