$text = $this->mText;
if ( $this->mEditSectionTokens ) {
$text = preg_replace_callback(
- ParserOutput::EDITSECTION_REGEX,
+ self::EDITSECTION_REGEX,
function ( $m ) {
global $wgOut, $wgLang;
$editsectionPage = Title::newFromText( htmlspecialchars_decode( $m[1] ) );
$text
);
} else {
- $text = preg_replace( ParserOutput::EDITSECTION_REGEX, '', $text );
+ $text = preg_replace( self::EDITSECTION_REGEX, '', $text );
}
// If you have an old cached version of this class - sorry, you can't disable the TOC
# We don't register links pointing to our own server, unless... :-)
global $wgServer, $wgRegisterInternalExternals;
+ # Replace unnecessary URL escape codes with the referenced character
+ # This prevents spammers from hiding links from the filters
+ $url = parser::normalizeLinkUrl( $url );
+
$registerExternalLink = true;
if ( !$wgRegisterInternalExternals ) {
$registerExternalLink = !self::isLinkInternal( $wgServer, $url );
* @since 1.25
*/
public function addTrackingCategory( $msg, $title ) {
- if ( $title->getNamespace() === NS_SPECIAL ) {
+ if ( $title->isSpecialPage() ) {
wfDebug( __METHOD__ . ": Not adding tracking category $msg to special page!\n" );
return false;
}