User:Pathoschild/common.js

///NOTE TO SELF: switch to monobook skin to use production scripts // mw.loader.load( "https://meta.wikimedia.org/w/index.php?title=User:Zhaofeng_Li/Reflinks.js&action=raw&ctype=text/javascript" );//importScript('User:Ucucha/HarvErrors.js'); importScript("User:PleaseStand/segregate-refs.js"); importScript("User:Ohconfucius/test/EngvarB.js");	//Engvar importScript("User:Ohconfucius/dashes.js"); importScript("User:Splarka/diffreveal.js");      //reveals unicode characters when viewing diffs importScript("User:Ohconfucius/script/flagcruft.js");  //flagcruft, tablesort importScript("User:Ohconfucius/test/formatgeneral.js"); importScript("User:Ohconfucius/script/tometricunits.js"); importScript("User:Ohconfucius/test/MOSNUM dates.js"); importScript("User:Ohconfucius/test/Common Terms.js"); importScript("User:Ohconfucius/test/Sources.js"); importScript("User:Ohconfucius/script/foreigndates.js"); mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js/load.js&action=raw&ctype=text/javascript');

importScript('User:Evad37/duplinks-alt.js'); // User:Evad37/duplinks-alt

// a collection of single-purpos regexes are stored at "User:Ohconfucius/test/throwaway_regexes"

/**** dyk ****/ // User:Dr pda/prosesize.js importScript('User:Dr pda/prosesize.js'); //User:Dr pda/prosesize.js

/**** afd helper ****/ mw.loader.load//en.wikipedia.org/w/index.php?title=User:Jnothman/afd_helper/script.js&action=raw&ctype=text/javascript');

/* This is to keep track of who is using this extension: User:Jnothman/afd_helper/script.js */

/** **/ /// EDIT SUMMARIES & USE DMY TEMPLATE

function Ohc_edit_summary1 { //Add a tag to the summary box //	setoptions(minor='true')	//removed ",watch='false'" in response to user notification 13 Nov. 2010 setreason('Script-assisted style fixes', 'appendonce'); doaction('diff'); }

function Ohc_edit_summary2(editor) { editor .options({ minor: false, watch: false }) .appendEditSummary('Script-assisted style fixes and per CS1') .clickDiff; }

function Ohc_for_AWB(editor) { editor .replace(/([\s\t]+)(?:regex|txt.value=txt.value.replace)\(\//gi, '$1ArticleText=Regex.Replace(ArticleText, @"(?i)')		.replace(/\/gi, [\'\"]/gi, '", "') .replace(/\'(\);[\s\t]*)/gi, '"$1'); }

function Ohc_transcripts { regex(/(\d?:|)\d\d?:\d\d\n/gi, ''); regex(/(\w,?)\s?\n/gi, '$1 ');

}

function Ohc_for_Petscan { regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3_$4_$5_$6_$7_$8'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3_$4_$5_$6_$7'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3_$4_$5_$6'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3_$4_$5'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3_$4'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2_$3'); regex(/\[\[([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1_$2'); regex(/\[\[([^|\]\s]+)\|([^\]]*)\]\]/gi, '$1'); }

function Ohc_insert_tag { var txt=document.editform.wpTextbox1; // current month-year var currentDate = new Date; var currmonth = currentDate.getMonth; var curryear = currentDate.getFullYear; var myMonths = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"); var curryyyymm = myMonths[currmonth] + ' ' + curryear;

/// insert 'use British English' template txt.value=txt.value.replace(/\{\{(Use Australian English\s?)(\|[^}]*)?\}\}/gi, ''); txt.value=txt.value.replace(/\{\{(Use (?:Bangladeshi|Commonwealth|Pakistani|Irish|Scottish|Singapore|Hong Kong|Indian|New Zealand|South African) English\s?)(\|[^}]*)?\}\}/gi, ''); txt.value=txt.value.replace(/\{\{(?:use British(?: \(Oxford\)|) English)(\|[^}]*)?\}\}/gi, ''); txt.value=txt.value.replace(/\{\{Engvar[A-Z][a-z]*\s?(\|[^}]*)?\}\}/gi, '');

var rxpdd = new RegExp("", "gi"); var dflagfound = txt.value.search(rxpdd); if (dflagfound == -1) {       txt.value='\r\n'+txt.value; } }

/** **/ /// COMPOSITE SCRIPT DRIVERS

function ONETOUCH_DMY(editor) { // Add a tag to the summary box var txt=document.editform.wpTextbox1; //Ohc_ref_format; Ohc_retrain_links; Ohc_CommonTerms; //ohc_replaceflag; ohc_delink_dates(editor); ohc_expand_ref_dates(editor); ohc_protect_dates(editor); ohc_fix_unambiguous_dates(editor); ohc_body_dates_to_dmy(editor); ohc_delink_year_in_X(editor); ohc_dmy_publication_dates(editor); ohc_delink_ISO_to_dmy(editor); ohc_unprotect_dates(editor); autoEdFunctions; //dashes Ohc_formatgeneral; ohc_sources_driver(editor); Ohc_edit_summary2(editor); }

function ONETOUCH_MDY(editor) { // Add a tag to the summary box var txt=document.editform.wpTextbox1; //	Ohc_ref_format; Ohc_CommonTerms;

ohc_delink_dates(editor); ohc_expand_ref_dates(editor); ohc_protect_dates(editor); ohc_fix_unambiguous_dates(editor); ohc_body_dates_to_mdy(editor); ohc_delink_year_in_X(editor); ohc_mdy_publication_dates(editor); ohc_delink_ISO_to_mdy(editor); ohc_unprotect_dates(editor); autoEdFunctions; //dashes Ohc_formatgeneral; ohc_sources_driver(editor); Ohc_edit_summary2(editor); }

function ohc_sources_driver(editor) { Ohc_remove_urls; ohc_protect_urls; Ohc_sources_prep; ohc_foreign_dates; Ohc_unpipe; Ohc_dab_news_sources; Ohc_sourcename; Ohc_sourcework; Ohc_sourcepub; Ohc_sourceagency; Ohc_redo_pipe; Ohc_publishers; Ohc_sources_cleanup; ohc_unprotect_urls; }

function ONETOUCH_FMT(editor) { // Add a tag to the summary box var txt=document.editform.wpTextbox1; Ohc_CommonTerms; autoEdFunctions; //dashes ohc_sources_driver(editor); Ohc_formatgeneral; Ohc_edit_summary2(editor); }

/** **/

/** * TemplateScript adds configurable templates and scripts to the sidebar, and adds an example regex editor. * @see https://meta.wikimedia.org/wiki/TemplateScript * @update-token */ $.ajax('//tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js', { dataType:'script', cache:true }).then(function {	pathoschild.TemplateScript.add( [			//{ name: 'delink dates', script: function(editor) { ohc_delink_dates(editor); }, tooltip: 'delink dates' }, { name: 'One Touch: DMY', script: function(editor) { ONETOUCH_DMY(editor); }, tooltip: 'day month + CT' }, { name: 'One Touch: MDY', script: function(editor) { ONETOUCH_MDY(editor); }, tooltip: 'month day + CT' }, { name: 'One Touch: FORMAT', script: function(editor) { ONETOUCH_FMT(editor); }, tooltip: 'general fmt, CT + cites' }, //{ name: 'Make AWB', script: function(editor) { Ohc_for_AWB(editor); }, tooltip: 'Make AWB code' }, //{ name: 'Expand dates', script: function(editor) { ohc_refs_to_yyyymmdd(editor); }, tooltip: 'yyyy-mm-dd' }, { name: 'SLASH-US', script: function(editor) { ohc_US_slash_dates_to_mdy(editor); }, tooltip: 'US-slash' }, { name: 'SLASH-UK', script: function(editor) { ohc_UK_slash_dates_to_dmy(editor); }, tooltip: 'UK-slash' }, ],		{ category: 'General' } ); }); //