// <nowiki><pre>
///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/test/MOSNUM dates.js");
importScript("User:Ohconfucius/test/Common Terms.js");
importScript("User:Ohconfucius/test/Sources.js");
importScript("User:Ohconfucius/script/foreigndates.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(']-assisted ] fixes and per ]', 'appendonce');
	doaction('diff');
}

function Ohc_edit_summary2(){
	//Add a tag to the summary box
	setoptions(minor='false',watch='false'); 		
	setreason(']-assisted ] fixes', 'appendonce');
	doaction('diff');
}

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

function Ohc_customised(){
	regex(/(\|{3}(?:\|\d{4}|)\}\} )(?:Mrs\.?|Miss) /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 + ' ' + curryear;

/// insert 'use British English' template
    txt.value=txt.value.replace(/\{\{(Use (?:Australian|Scottish) English)(\|*)?\}\}/gi, '{{$1|date='+curryyyymm+'}}');
    txt.value=txt.value.replace(/\{\{(Use (?:Pakistani|Irish|Singapore|Hong Kong|Indian|New Zealand|South African) English)(\|*)?\}\}/gi, '{{EngvarB|date='+curryyyymm+'}}');
    txt.value=txt.value.replace(/\{\{(?:use British (?:\(Oxford\) |)English)(\|*)?\}\}/gi, '{{EngvarB|date='+curryyyymm+'}}');
    txt.value=txt.value.replace(/\{\{(Use (?:Indian|New Zealand|South African) English|Engvar)(\|*)?\}\}/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(){
// 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();
	ohc_expand_ref_dates();
	ohc_protect_dates();
	ohc_fix_unambiguous_dates();
	ohc_body_dates_to_dmy();
	ohc_delink_year_in_X();
	ohc_dmy_publication_dates();
	ohc_delink_ISO_to_dmy();
	ohc_unprotect_dates();
	autoEdFunctions(); //dashes
	Ohc_formatgeneral();
//	ohc_sources_driver();
	Ohc_edit_summary1();
}

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

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

function ohc_sources_driver()
{
      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(){
// Add a tag to the summary box
 var txt=document.editform.wpTextbox1;
	Ohc_CommonTerms();
	autoEdFunctions(); //dashes
//	ohc_sources_driver();
	Ohc_formatgeneral();
	Ohc_edit_summary3();
}

/** ------------------------------------------------------------------------ **/


$(function () {
 if(document.forms.editform) {
//    mw.util.addPortletLink('p-tb', 'javascript:ohc_delink_dates()', 'delink dates', 't-eng', 'delink dates', '', '');
//    mw.util.addPortletLink('p-tb', 'javascript:Ohc_for_Petscan()', 'PetScan', 't-pet', 'Create open PetScan list', '', '');
//    mw.util.addPortletLink('p-tb', 'javascript:ONETOUCH_DMY()', 'One Touch: DMY', 't-dmy', 'day month + CT', '', '');
//    mw.util.addPortletLink('p-tb', 'javascript:ONETOUCH_MDY()', 'One Touch: MDY', 't-mdy', 'month day + CT', '', '');
    mw.util.addPortletLink('p-tb', 'javascript:ONETOUCH_FMT()', 'One Touch: FMT', 't-fmt', 'general fmt, CT + cites', '', '');
//    mw.util.addPortletLink('p-tb', 'javascript:ohc_US_slash_dates_to_mdy()', 'US-slash dates', 't-US', 'US-slash', '', '');
//    mw.util.addPortletLink('p-tb', 'javascript:ohc_UK_slash_dates_to_dmy()', 'UK-slash dates', 't-UK', 'UK-slash', '', '');

  }
});
// </pre></nowiki>