User:Symplectic Map/spell.js

Source: 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.
// ---------------------------------------------------- //
// For installation/usage information see
//
// [[User:Symplectic Map/AutoSpell]]
// ---------------------------------------------------- //
importScript('User:Symplectic_Map/misspellings.js');
importScript('User:Symplectic_Map/capitalizations.js');
importScript('User:Symplectic_Map/script.js');

function SM_edit() {
 var txt = document.forms.editform.wpTextbox1;
// txt.value = SM_cita(txt.value);
 txt.value = common_misspellings(txt.value);
 txt.value = common_capitalizations(txt.value);
 SM_summary();
 // Check 'This is a minor edit'
 document.forms.editform.wpMinoredit.checked = true;
 // Click 'Show changes'
 document.forms.editform.wpDiff.click();
}

//Tags summary textbox
function SM_summary() {
 var txt = document.forms.editform.wpSummary;
 var tag = "[[User:Symplectic_Map/AutoSpell|Script-assisted]] correction of [[WP:LCM|misspellings]]";

 // Is the tag blank?
 if( tag.match(/[^\s]/) ) {
  // Has it already been tagged?
  if( txt.value.indexOf(tag) == -1 ) {
   // Append a pipe if necessary
   if( txt.value.match(/[^\*\/\s][^\/\s]?\s*$/) ) {
    txt.value += " | ";
   }
   // Append our tag
   txt.value += tag;
  }
 }
}

//Allows URI to be properly decoded for AutoEd in View Mode 
function SM_QueryString(p) {
  var re = RegExp('[&?]' + p + '=([^&]*)');
  var matches;
  if (matches = re.exec(document.location)) {
    try {
      return decodeURI(matches[1]);
    } catch (e) {
    }
  }
  return null;
}

addOnloadHook(function () {
 if( SM_QueryString('SMedit') ) {
  SM_edit();
 }
 if (document.forms.editform) {
  mw.util.addPortletLink('p-cactions', 'javascript:SM_edit()', 
                 'Spell', 'ca-spell', 'Run spellcheck on the edit window', 
                 'S', document.getElementById('ca-move'));
 } else if ( (mw.config.get('wgAction') == "view") && mw.config.get('wgIsArticle')) {
  var url = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + encodeURIComponent(mw.config.get('wgPageName')) + '&action=edit';
  mw.util.addPortletLink('p-cactions', url + '&SMedit=true',
                 'Spell', 'ca-spell', 'Run spellcheck in edit mode', 
                 'S', document.getElementById('ca-move'));
 }
});