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.

///NOTE TO SELF: switch to monobook skin to use production scripts

// <nowiki><pre>

mw.loader.load( "https://meta.wikimedia.org/?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/?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/?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('[[User:Ohconfucius/script|Script]]-assisted [[WP:MOS|style]] fixes', 'appendonce');

	doaction('diff');

}



function Ohc_edit_summary2(editor) {

	editor

		.options({ minor: false, watch: false })

		.appendEditSummary('[[User:Ohconfucius/script|Script]]-assisted [[WP:MOS|style]] fixes and per [[Help:Citation Style 1|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, '[https://en.wikipedia.org/?title=$1_$2_$3_$4_$5_$6_$7_$8&action=edit $1_$2_$3_$4_$5_$6_$7_$8]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2_$3_$4_$5_$6_$7&action=edit $1_$2_$3_$4_$5_$6_$7]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2_$3_$4_$5_$6&action=edit $1_$2_$3_$4_$5_$6]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2_$3_$4_$5&action=edit $1_$2_$3_$4_$5]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2_$3_$4&action=edit $1_$2_$3_$4]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2_$3&action=edit $1_$2_$3]');

	regex(/\[\[([^|\]\s]+) ([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1_$2&action=edit $1_$2]');

	regex(/\[\[([^|\]\s]+)\|([^\]]*)\]\]/gi, '[https://en.wikipedia.org/?title=$1&action=edit $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 = myMonthscurrmonth + ' ' + curryear;



/// insert 'use British English' template

    txt.value=txt.value.replace(/\{\{(Use Australian English\s?)(\|[^}]*)?\}\}/gi, '{{$1|date='+curryyyymm+'}}');

    txt.value=txt.value.replace(/\{\{(Use (?:Bangladeshi|Commonwealth|Pakistani|Irish|Scottish|Singapore|Hong Kong|Indian|New Zealand|South African) English\s?)(\|[^}]*)?\}\}/gi, '{{EngvarB|date='+curryyyymm+'}}');

    txt.value=txt.value.replace(/\{\{(?:use British(?: \(Oxford\)|) English)(\|[^}]*)?\}\}/gi, '{{EngvarB|date='+curryyyymm+'}}');

    txt.value=txt.value.replace(/\{\{Engvar[A-Z][a-z]*\s?(\|[^}]*)?\}\}/gi, '{{EngvarB|date='+curryyyymm+'}}');



    var rxpdd = new RegExp("{{(Use (?:Australian|Scottish|British|Indian|New Zealand|South African) English|EngvarB)\\|date="+curryyyymm+"}}", "gi");

    var dflagfound = txt.value.search(rxpdd);

    if (dflagfound == -1)

    {

        txt.value='{{EngvarB|date='+curryyyymm+'}}\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 [[File:Pathoschild/templatescript.js]]

 */

$.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' }

	);

});

// </pre></nowiki>