Legoktm has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/310209

Change subject: Handle magic links being disabled
......................................................................

Handle magic links being disabled

Follows up 78debba3aa in MediaWiki core.

Bug: T47942
Change-Id: I0c5f8ccd40fb658f9665640c9ecbb6192b4b745a
---
M engines/LuaCommon/TextLibrary.php
M engines/LuaCommon/lualib/mw.text.lua
2 files changed, 34 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Scribunto 
refs/changes/09/310209/1

diff --git a/engines/LuaCommon/TextLibrary.php 
b/engines/LuaCommon/TextLibrary.php
index e3df79b..164f21e 100644
--- a/engines/LuaCommon/TextLibrary.php
+++ b/engines/LuaCommon/TextLibrary.php
@@ -26,6 +26,22 @@
                        'nowiki_protocols' => array(),
                );
 
+               $parserOpts = $this->getParserOptions();
+               // Magic links were made configurable in MW 1.28
+               if ( is_callable( [ $parserOpts, 'getMagicISBNLinks' ] ) ) {
+                       $opts += [
+                               'magicISBN' => $parserOpts->getMagicISBNLinks(),
+                               'magicPMID' => $parserOpts->getMagicPMIDLinks(),
+                               'magicRFC' => $parserOpts->getMagicRFCLinks(),
+                       ];
+               } else {
+                       $opts += [
+                               'magicISBN' => true,
+                               'magicPMID' => true,
+                               'magicRFC' => true,
+                       ];
+               }
+
                foreach ( $wgUrlProtocols as $prot ) {
                        if ( substr( $prot, -1 ) === ':' ) {
                                // To convert the protocol into a 
case-insensitive Lua pattern,
diff --git a/engines/LuaCommon/lualib/mw.text.lua 
b/engines/LuaCommon/lualib/mw.text.lua
index 0439966..583ea86 100644
--- a/engines/LuaCommon/lualib/mw.text.lua
+++ b/engines/LuaCommon/lualib/mw.text.lua
@@ -119,9 +119,15 @@
        ['\n'] = '
',
        ['\f'] = '',
 } ) do
-       nowikiReplMagic['ISBN' .. sp] = 'ISBN' .. esc
-       nowikiReplMagic['RFC' .. sp] = 'RFC' .. esc
-       nowikiReplMagic['PMID' .. sp] = 'PMID' .. esc
+       if options.magicISBN then
+               nowikiReplMagic['ISBN' .. sp] = 'ISBN' .. esc
+       end
+       if options.magicRFC then
+               nowikiReplMagic['RFC' .. sp] = 'RFC' .. esc
+       end
+       if options.magicPMID then
+               nowikiReplMagic['PMID' .. sp] = 'PMID' .. esc
+       end
 end
 
 function mwtext.nowiki( s )
@@ -133,9 +139,15 @@
        s = string.sub( s, 2 )
        s = string.gsub( s, '__', '__' )
        s = string.gsub( s, '://', '://' )
-       s = string.gsub( s, 'ISBN%s', nowikiReplMagic )
-       s = string.gsub( s, 'RFC%s', nowikiReplMagic )
-       s = string.gsub( s, 'PMID%s', nowikiReplMagic )
+       if options.magicISBN then
+               s = string.gsub( s, 'ISBN%s', nowikiReplMagic )
+       end
+       if options.magicRFC then
+               s = string.gsub( s, 'RFC%s', nowikiReplMagic )
+       end
+       if options.magicPMID then
+               s = string.gsub( s, 'PMID%s', nowikiReplMagic )
+       end
        for k, v in pairs( options.nowiki_protocols ) do
                s = string.gsub( s, k, v )
        end

-- 
To view, visit https://gerrit.wikimedia.org/r/310209
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0c5f8ccd40fb658f9665640c9ecbb6192b4b745a
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Scribunto
Gerrit-Branch: master
Gerrit-Owner: Legoktm <legoktm.wikipe...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to