Jump to content

User:WOSlinkerBot/lint3.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
function lint_queryString(p) {
    var re = RegExp('[&?]' + p + '=([^&]*)');
    var matches;
    if (matches = re.exec(document.location)) {
        try { 
            return decodeURI(matches[1]);
        } catch (e) { }
    }
    return null;
}

//Add a 'lint edit' tab
if(mw.config.get('wgArticleId') != 0 ) { 
    $( function lintEditButton() {
        mw.util.addPortletLink('p-cactions', 
                       mw.util.getUrl(null,{action:'edit',lintedit:true}),
                       'lint3',
                       'p-lint',
                       'lint3 edit');
    }
)}

if(mw.config.get('wgAction') == 'edit' && lint_queryString('lintedit') == 'true') {
    $(function lint() {
        var myContent = document.getElementById('wpTextbox1').value;

        myContent = myContent.replace(/(\| *RD[\w\d\-]* *\= *)\'\'\'([\d\w\,\.\:\-\–]*) *\n/g,'$1\'\'\'$2\'\'\'\n');
        myContent = myContent.replace(/(\| *RD[\w\d\-]* *\= *)\'\'\'(\{\{[^\'\}]*?\}\}) *\n/g,'$1\'\'\'$2\'\'\'\n');
        myContent = myContent.replace(/(\| *RD[\w\d\-]* *\= *)\'\'\'(\{\{[^\'\}]*?\}\})\<br\>(\{\{[^\'\}]*?\}\}) *\n/g,'$1\'\'\'$2<br>$3\'\'\'\n');
        myContent = myContent.replace(/(\| *RD[\w\d\-]* *\= *)\'\'\'(\{\{[^\'\}]*?\}\} *\[[^\'\n]*?\]) *\n/g,'$1\'\'\'$2\'\'\'\n');

        myContent = myContent.replace(/(\| *\'\'\'\'\'[\d\w\,\:\.\-\–]*)( *\|)/g,'$1\'\'\'\'\'$2');
        myContent = myContent.replace(/(\| *\'\'\'\'\'[\d\w\,\:\.\-\–]*) *(\n)/g,'$1\'\'\'\'\'$2');
        myContent = myContent.replace(/(\| *\'\'\'[\d\w\,\.\:\-\–]*)( *\|)/g,'$1\'\'\'$2');
        myContent = myContent.replace(/(\| *\'\'\'[\d\w\,\.\:\-\–]*) *(\n)/g,'$1\'\'\'$2');
        myContent = myContent.replace(/(\| *\'\'[\d\w\,\.\:\-\–]*)( *\|)/g,'$1\'\'$2');
        myContent = myContent.replace(/(\| *\'\'[\d\w\,\.\:\-\–]*) *(\n)/g,'$1\'\'$2');

          if(document.getElementById('wpTextbox1').value != myContent) {

              if(document.getElementById('wpTextbox1').value != myContent) {
                  document.getElementById('wpTextbox1').value=myContent;
                  document.getElementById('wpSummary').value='reduce [[Special:LintErrors|lint errors]] by fixing bold issues';
                  document.getElementById('wpMinoredit').checked = true;
              }
          }

    }
)}