User:Tony1/monobook.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
![]() | The accompanying .css page for this skin is at User:Tony1/monobook.css. |
importScript('User:Tony1/monobook.js/script.js');
// [[User:Zocky/SearchBox.js]]
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Zocky/SearchBox.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
importScript('User:Proteins/switchboard.js')
importScript("User:GregU/dashes.js")
function make_dates_bold(){
var txt=document.editform.wpTextbox1;
//process date ranges containing a hyphen
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?[-ñ]\s?(?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?)\s?:\s?/gi, '* \'\'\'$1:\'\'\' ');
//process date ranges containing a hyphen
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?[-ñ]\s?\d\d?)\s?:\s?/gi, '* \'\'\'$1:\'\'\' ');
//protect date ranges containing a hyphen
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?)[-ñ](\s?(?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?)\s?:\s?/gi, '$1xx$2');
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?)[-ñ](\s?\d\d?)\s?:\s?/gi, '$1xx$2');
//process dates containing a hyphen
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?)[-ñ]\s?/gi, '* \'\'\'$1:\'\'\' ');
//unprotect date ranges containing a hyphen
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?)xx(\s?(?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?)\s?:\s?/gi, '$1ñ$2');
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?\s?)xx(\s?\d\d?)\s?:\s?/gi, '$1ñ$2');
//process other dates
txt.value=txt.value.replace(/\*\s?((?:January|February|March|April|May|June|July|August|September|October|November|December) \d\d?)\s?:\s?/gi, '* \'\'\'$1:\'\'\' ');
edit_summary();
}
function fix_common_errors() {
var txt=document.editform.wpTextbox1;
//first add template
//if (txt.value.search(/{{template}}/gi) == -1)
//{
//txt.value='{{template}}\r\n'+txt.value;
//}
//month+day piped
txt.value=txt.value.replace(/\[\[\d{1,2}(?:th|st|nd|rd|)\s(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s\d{1,2}(?:th|st|nd|rd|)\|([^\]]{1,30})\]\]/gi, '$1');
//fix 'bda' template redirect
txt.value=txt.value.replace(/{{bda\|([^}]+)}}/gi, '{{birth date and age|$1}}');
//zap 'date' template
txt.value=txt.value.replace(/\{\{date\|([^\}\|]+)(?:[^\}]+)?\}\}/gi, '$1');
//zap '#dateformat:' template
txt.value=txt.value.replace(/{{#dateformat:([^\}\|]+)(?:\|dmy|\|mdy)?}}/gi,'$1');
txt.value=txt.value.replace(/(\[\[)\s([^\]]*\]\])/gi, '$1$2');
txt.value=txt.value.replace(/(\[\[[^\]\|]*)\s(\]\])/gi, '$1$2');
txt.value=txt.value.replace(/(\[\[[^\]]*\s)\s+([^\]]\]\])/gi, '$1$2');
txt.value=txt.value.replace(/(\[\[[^\]]*\d),(\]\])/gi, '$1$2');
//zap 'English' template
// txt.value=txt.value.replace(/\{\{English\}\}/gi, '$1'); //returns '$1'
// txt.value=txt.value.replace(/({{English}})/gi, '$1'); //no reaction
txt.value=txt.value.replace(/{{(English)}}/gi, '$1.');
// txt.value=txt.value.replace(/(foo)/gi, '$1bar');
// txt.value=txt.value.replace(/{{(foo)}}/gi, '$1bar');
//to convert D/MM/YYYY to MONTH DAY, YYYY
// txt.value=txt.value.replace(/\s1\/([123]?\d)/([12]\d{3})[^\w\/\\\-]/gi, '$1January $2, $3$4'); does not load
// txt.value=txt.value.replace(/1\/([123]?\d)/([12]\d{3})[^\w\/\\\-]/gi, '$1January $2, $3$4'); does not load
// txt.value=txt.value.replace(/\s1\/([123]?\d)/([12]\d{3})[^\w\/\\\-]/gi, '$1January $2, $3'); does not load
// txt.value=txt.value.replace(/\s1\/([123]?\d)/([12]\d{3})[^\w\/\\\-]/gi, 'January $2, $3$4'); does not load
// txt.value=txt.value.replace(/(\d{4})\/0?1\/0(\d)/gi, 'January $2, $1'); loads, no response
// txt.value=txt.value.replace(/\s1\/([123]?\d)\/([12]\d{3})[^\w\/\\\-]/gi, '$1January $2, $3$4');
// txt.value=txt.value.replace(/\s0?1\/([123]?\d)\/([12]\d{3})[^\w\/\\\-]/gi, '$1 January, $2'); no line feed
// txt.value=txt.value.replace(/(\s)0?1\/([123]?\d)\/([12]\d{3})([^\w\/\\\-])/gi, '$1$2 January, $3$4');
txt.value=txt.value.replace(/([^\d\w])0?1\/([0123]?\d)\/([12]\d{3})([^\d\w])/gi, '$1$2 January, $3$4');
// txt.value=txt.value.replace(/([^\w])1\/(\d?\d)\/(\d{4})([^\w])/gi, '$1January $2, $3$4');
// txt.value=txt.value.replace(/1\/(\d?\d)/gi, 'January $1');
}
function part_dates() {
var txt=document.editform.wpTextbox1;
fix_common_errors();
//remove leading zeros from dts templates
txt.value=txt.value.replace(/({{dts\d?\|[^}]*\|)0([^}]*}})/gi, '$1$2');
//delink ISO dates
txt.value=txt.value.replace(/\[\[(\d{4}-\d\d-\d\d)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[(\d\d-\d\d)\]\]/gi, '$1-$2');
txt.value=txt.value.replace(/(\d{4})-\[\[(\d\d-\d\d)\]\]/gi, '$1-$2');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-(\d\d-\d\d)/gi, '$1-$2');
//remove templates that links launch year, baseball year etc
// txt.value=txt.value.replace(/{{(?:avyear|by|fy|ly|scy|sdy)\|(\d{1,4})}}/gi, '$1');
//remove dts1 template that links ISO dates
txt.value=txt.value.replace(/{{dts1\|(\d{4}-\d\d-\d\d)}}/gi, '$1');
// century
// txt.value=txt.value.replace(/\[\[((?:first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|eleventh|twelfth|thirteenth|fourteenth|fifteenth|sixteenth|seventeenth|eighteenth|nineteenth|twentieth|twenty(?:\s|-)first)(?:\s|-))(century|centuries)\]\]/gi, '$1$2');
// txt.value=txt.value.replace(/\[\[(?:first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|eleventh|twelfth|thirteenth|fourteenth|fifteenth|sixteenth|seventeenth|eighteenth|nineteenth|twentieth|twenty(?:\s|-)first(?:\s|-))(?:century|centuries)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[((?:first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|eleventh|twelfth|thirteenth|fourteenth|fifteenth|sixteenth|seventeenth|eighteenth|nineteenth|twentieth|twenty(?:\s|-)first)(?:\s|-))(century|centuries)(\sAD|\sBC|\sCE|\sBCE|)\]\]/gi, '$1$2$3');
txt.value=txt.value.replace(/\[\[(?:first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|eleventh|twelfth|thirteenth|fourteenth|fifteenth|sixteenth|seventeenth|eighteenth|nineteenth|twentieth|twenty(?:\s|-)first)(?:\s|-)(?:century|centuries)(?:\sAD|\sBC|\sCE|\sBCE|)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(\d{1,2}(?:st|nd|rd|th)(?:\s|-))(century|centuries)(\sAD|\sBC|\sCE|\sBCE|)\]\]/gi, '$1$2$3');
txt.value=txt.value.replace(/\[\[\d{1,2}(?:st|nd|rd|th)(?:\s|-)(?:century|centuries)(?:\sAD|\sBC|\sCE|\sBCE|)\|([^\]]{1,30})\]\]/gi, '$1');
// decades and years
txt.value=txt.value.replace(/\[\[(\d{1,3}0)\'?s\]\]/g, '$1s');
txt.value=txt.value.replace(/\[\[\d{1,3}0\'?s?\|([^\]]{1,30})\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(\d{1,3}0)\'?(s)?\s(AD|BC|CE|BCE)\]\]/gi, '$1$2 $3');
txt.value=txt.value.replace(/\[\[\d{1,3}0\'?s?\s(?:AD|BC|CE|BCE)\|([^\]]{1,30})\]\]/gi, '$1');
//month+year
//Identify surprise or 'Easter egg' diversions linking month+years to year articles. Turn them into month+year links to be dealt with below
txt.value=txt.value.replace(/\[\[\d{1,4}#[^\|\]]+\|((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{3,4})\]\]/gi, '[[$1]]');
txt.value=txt.value.replace(/\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{3,4})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{3,4}\|([^\]]{1,30})\]\]/gi, '$1');
//removed piped years when in full date
txt.value=txt.value.replace(/(\[\[\d{1,2}\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\],?\s?\[\[)[^\|\]]{1,32}\|(\d{1,4}\]\])/gi, '$1$2');
txt.value=txt.value.replace(/(\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}\]\],?\s?\[\[)[^\|\]]{1,32}\|(\d{1,4}\]\])/gi, '$1$2');
//remove 'xx' left by other code
txt.value=txt.value.replace(/(in)xx((?:aviation|baseball|film|literature|comics|ireland))/gi, '$1 $2');
//'present'
txt.value=txt.value.replace(/\[\[Present\s\(time\)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(Present)\]\]/gi, '$1');
//Season
txt.value=txt.value.replace(/\[\[(spring\s\(season\)|summer|winter|autumn)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[spring\s\(season\)\|([^\]]{1,30})\]\]/gi, '$1');
//Identify surprise or 'Easter egg' diversions linking months to year articles.
txt.value=txt.value.replace(/\[\[\d{1,4}#[^\|\]]+\|(January|February|March|April|May|June|July|August|September|October|November|December)\]\]/gi, '$1');
// months
txt.value=txt.value.replace(/\[\[(January|February|March|April|May|June|July|August|September|October|November|December)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(Jan\.?|Feb\.?|Mar\.?|Apr\.?|May\.?|Jun\.?|Jul\.?|Aug\.?|Sep\.?|Oct\.?|Nov\.?|Dec\.?)\]\]/g, '$1');
//Treat 'Sept' (i.e. month abbreviation) differently from 'sept' (i.e. family)
txt.value=txt.value.replace(/\[\[(Sept)\]\]/g, '$1');
//Month+day_number "March 7th" -> "March 7"
txt.value=txt.value.replace(/\[\[(January|February|March|April|May|June|July|August|September|October|November|December)\s(\d?\d)(?:th|st|nd|rd)\]\]/gi, '[[$1 $2]]');
txt.value=txt.value.replace(/\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](?:th|st|nd|rd)/gi, '[[$1]]');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd)\s(January|February|March|April|May|June|July|August|September|October|November|December)\]\]/gi, '[[$1 $2]]');
//Sequence containing month+day_number piped into number. Preferences do not work. They don't work in sequence because digits in the two dates must be adjacent
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\s?\-?\s?)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with ndash or mdash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\s?&[nm]dash;\s?)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with slash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\/)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\s?\-?\s?)\[\[(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with ndash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\s?&[nm]dash;\s?)\[\[(\d{1,2})\]\]/gi, '$1$2$3$4');
//same again but with slash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[((?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d?\d)\]\](\/)\[\[(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\s?\-?\s?)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with ndash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\s?&[nm]dash;\s?)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with slash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\/)\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\s?\-?\s?)\[\[(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with ndash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\s?&[nm]dash;\s?)\[\[(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
//same again but with slash instead of hyphen
txt.value=txt.value.replace(/([^\[]{4})\[\[(\d?\d)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\](\/)\[\[(\d{1,2}(?:th|st|nd|rd))\]\]/gi, '$1$2$3$4');
// month and day piped
txt.value=txt.value.replace(/\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s\d{1,2}(?:th|st|nd|rd)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[\d{1,2}(?:th|st|nd|rd)\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\|([^\]]{1,30})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(\d{1,2}(?:st|nd|rd|th))\]\]/gi, '$1');
//4 digit years piped
txt.value=txt.value.replace(/\[\[\d{1,4}\|([^\]]{1,30})\]\]/gi, '$1');
//full dates with incorrect 'year in'
txt.value=txt.value.replace(/(\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s(?:[0123][\d]|[\d])\]\]),\s\[\[(\d{1,4})\sin\s[^\]]{1,32}\]\]/gi, '$1 $2');
txt.value=txt.value.replace(/(\[\[(?:[0123][\d]|[\d])\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\])\s\[\[(\d{1,4})\sin\s[^\]]{1,32}\]\]/gi, '$1 $2');
txt.value=txt.value.replace(/(\[\[(?:[0123][\d]|[\d])\s(?:January|February|March|April|May|June|July|August|September|October|November|December)\]\])\s{{(?:avyear|by|fy|ly|scy|sdy)\|(\d{1,4})}}/gi, '$1 [[$2]]');
txt.value=txt.value.replace(/(\[\[(?:January|February|March|April|May|June|July|August|September|October|November|December)\s(?:[0123][\d]|[\d])\]\]),\s{{(?:avyear|by|fy|ly|scy|sdy)\|(\d{1,4})}}/gi, '$1 [[$2]]');
}
function formatgeneral() {
var txt=document.editform.wpTextbox1;
//remove flagicons from birth and death
txt.value=txt.value.replace(/(birth\s?=\s?)\{\{flagicon\|[^\}]+\}\}/gi, '$1');
txt.value=txt.value.replace(/(death\s?=\s?)\{\{flagicon\|[^\}]+\}\}/gi, '$1');
txt.value=txt.value.replace(/(birth_?place\s?=\s?)\{\{flagicon\|[^\}]+\}\}/gi, '$1');
txt.value=txt.value.replace(/(death_?place\s?=\s?)\{\{flagicon\|[^\}]+\}\}/gi, '$1');
//symbol for 'times'
txt.value=txt.value.replace(/×/gi, '◊');
//turn letter 'x' into symbol '◊'
txt.value=txt.value.replace(/(\d)\sx\s(\d{1,3})\sin\s\(/gi, '$1 ◊ $2 in (');
txt.value=txt.value.replace(/(\d)\sx\s(\d{1,3})\sinch\s/gi, '$1 ◊ $2 inch ');
// Convert degree symbols into ∞ symbol, ensure preceding space
txt.value=txt.value.replace(/°/g, '∞');
txt.value=txt.value.replace(/∫/g, '∞');
//remove commas from numerical values in convert template
txt.value=txt.value.replace(/({convert\|\d+),(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|\d+),(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|\d+),(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|\d+),(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|\d+),(\d)/g, '$1$2');
//remove leading zeros from convert template
txt.value=txt.value.replace(/({convert\|)0(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|)0(\d)/g, '$1$2');
txt.value=txt.value.replace(/({convert\|)0(\d)/g, '$1$2');
//Remove surprise or 'Easter egg' diversions linking unit name to orders of magnitude articles
txt.value=txt.value.replace(/\[\[1\s?_?E\s?[\-\+]?\d{1,2}\s?..?\|([^\]]{1,50})\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[Orders\sof\smagnitude\s\([^\)]+\)\|([^\]]{1,50})\]\]/gi, '$1');
}
function run_formatgeneral() {
var txt=document.editform.wpTextbox1;
formatgeneral();
edit_summary();
}
function delink_ISO() {
var txt = document.editform.wpTextbox1;
// delink_ISO();
txt.value=txt.value.replace(/\[\[(\d{4}-\d\d-\d\d)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[(\d\d-\d\d)\]\]/gi, '$1-$2');
txt.value=txt.value.replace(/(\d{4})-\[\[(\d\d-\d\d)\]\]/gi, '$1-$2');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-(\d\d-\d\d)/gi, '$1-$2');
// Add a tag to the summary box
var txt = document.editform.wpSummary;
var summary = "unified date formats per [[WP:MOSNUM]], rem [[wp:overlink]]";
if (txt.value.indexOf(summary) == -1) {
if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {
txt.value += " | ";
}
txt.value += summary;
}
// Press the diff button to check it
document.editform.wpDiff.click()
}
addOnloadHook(function () {
if(document.forms.editform) {
// addPortletLink('p-cactions', 'javascript:run_delink_ISO()', 'delink ISO', 'ca-unitfixer', 'Fixes some unit formatting', '', '');
}
});
function delink_ISO_to_dmy() {
var txt = document.editform.wpTextbox1;
//protect urls with embedded ISO dates etc
txt.value=txt.value.replace(/((?:\\|\/|\-)\d{4})(\-\d\d-\d\d(?:\\|\/|\-))/gi, '$1zz$2');
txt.value=txt.value.replace(/((?:\\|\/|\-)\d{4})(\-\d\d-\d\d)/gi, '$1zz$2');
txt.value=txt.value.replace(/(\d{4})(\-\d\d-\d\d(?:\\|\/|\-))/gi, '$1zz$2');
txt.value=txt.value.replace(/\[\[(\d{4})-01-0(\d)\]\]/gi, '$2 January $1');
txt.value=txt.value.replace(/\[\[(\d{4})-02-0(\d)\]\]/gi, '$2 February $1');
txt.value=txt.value.replace(/\[\[(\d{4})-03-0(\d)\]\]/gi, '$2 March $1');
txt.value=txt.value.replace(/\[\[(\d{4})-04-0(\d)\]\]/gi, '$2 April $1');
txt.value=txt.value.replace(/\[\[(\d{4})-05-0(\d)\]\]/gi, '$2 May $1');
txt.value=txt.value.replace(/\[\[(\d{4})-06-0(\d)\]\]/gi, '$2 June $1');
txt.value=txt.value.replace(/\[\[(\d{4})-07-0(\d)\]\]/gi, '$2 July $1');
txt.value=txt.value.replace(/\[\[(\d{4})-08-0(\d)\]\]/gi, '$2 August $1');
txt.value=txt.value.replace(/\[\[(\d{4})-09-0(\d)\]\]/gi, '$2 September $1');
txt.value=txt.value.replace(/\[\[(\d{4})-10-0(\d)\]\]/gi, '$2 October $1');
txt.value=txt.value.replace(/\[\[(\d{4})-11-0(\d)\]\]/gi, '$2 November $1');
txt.value=txt.value.replace(/\[\[(\d{4})-12-0(\d)\]\]/gi, '$2 December $1');
txt.value=txt.value.replace(/\[\[(\d{4})-01-([1-3]\d)\]\]/gi, '$2 January $1');
txt.value=txt.value.replace(/\[\[(\d{4})-02-([1-3]\d)\]\]/gi, '$2 February $1');
txt.value=txt.value.replace(/\[\[(\d{4})-03-([1-3]\d)\]\]/gi, '$2 March $1');
txt.value=txt.value.replace(/\[\[(\d{4})-04-([1-3]\d)\]\]/gi, '$2 April $1');
txt.value=txt.value.replace(/\[\[(\d{4})-05-([1-3]\d)\]\]/gi, '$2 May $1');
txt.value=txt.value.replace(/\[\[(\d{4})-06-([1-3]\d)\]\]/gi, '$2 June $1');
txt.value=txt.value.replace(/\[\[(\d{4})-07-([1-3]\d)\]\]/gi, '$2 July $1');
txt.value=txt.value.replace(/\[\[(\d{4})-08-([1-3]\d)\]\]/gi, '$2 August $1');
txt.value=txt.value.replace(/\[\[(\d{4})-09-([1-3]\d)\]\]/gi, '$2 September $1');
txt.value=txt.value.replace(/\[\[(\d{4})-10-([1-3]\d)\]\]/gi, '$2 October $1');
txt.value=txt.value.replace(/\[\[(\d{4})-11-([1-3]\d)\]\]/gi, '$2 November $1');
txt.value=txt.value.replace(/\[\[(\d{4})-12-([1-3]\d)\]\]/gi, '$2 December $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[01-0(\d)\]\]/gi, '$2 January $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[02-0(\d)\]\]/gi, '$2 February $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[03-0(\d)\]\]/gi, '$2 March $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[04-0(\d)\]\]/gi, '$2 April $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[05-0(\d)\]\]/gi, '$2 May $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[06-0(\d)\]\]/gi, '$2 June $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[07-0(\d)\]\]/gi, '$2 July $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[08-0(\d)\]\]/gi, '$2 August $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[09-0(\d)\]\]/gi, '$2 September $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[10-0(\d)\]\]/gi, '$2 October $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[11-0(\d)\]\]/gi, '$2 November $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[12-0(\d)\]\]/gi, '$2 December $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[01-([1-3]\d)\]\]/gi, '$2 January $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[02-([1-3]\d)\]\]/gi, '$2 February $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[03-([1-3]\d)\]\]/gi, '$2 March $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[04-([1-3]\d)\]\]/gi, '$2 April $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[05-([1-3]\d)\]\]/gi, '$2 May $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[06-([1-3]\d)\]\]/gi, '$2 June $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[07-([1-3]\d)\]\]/gi, '$2 July $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[08-([1-3]\d)\]\]/gi, '$2 August $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[09-([1-3]\d)\]\]/gi, '$2 September $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[10-([1-3]\d)\]\]/gi, '$2 October $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[11-([1-3]\d)\]\]/gi, '$2 November $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[12-([1-3]\d)\]\]/gi, '$2 December $1');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-01-0(\d)([^\d\w])/gi, '$1$3 January $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-02-0(\d)([^\d\w])/gi, '$1$3 February $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-03-0(\d)([^\d\w])/gi, '$1$3 March $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-04-0(\d)([^\d\w])/gi, '$1$3 April $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-05-0(\d)([^\d\w])/gi, '$1$3 May $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-06-0(\d)([^\d\w])/gi, '$1$3 June $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-07-0(\d)([^\d\w])/gi, '$1$3 July $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-08-0(\d)([^\d\w])/gi, '$1$3 August $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-09-0(\d)([^\d\w])/gi, '$1$3 September $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-10-0(\d)([^\d\w])/gi, '$1$3 October $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-11-0(\d)([^\d\w])/gi, '$1$3 November $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-12-0(\d)([^\d\w])/gi, '$1$3 December $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-01-([1-3]\d)([^\d\w])/gi, '$1$3 January $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-02-([1-3]\d)([^\d\w])/gi, '$1$3 February $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-03-([1-3]\d)([^\d\w])/gi, '$1$3 March $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-04-([1-3]\d)([^\d\w])/gi, '$1$3 April $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-05-([1-3]\d)([^\d\w])/gi, '$1$3 May $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-06-([1-3]\d)([^\d\w])/gi, '$1$3 June $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-07-([1-3]\d)([^\d\w])/gi, '$1$3 July $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-08-([1-3]\d)([^\d\w])/gi, '$1$3 August $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-09-([1-3]\d)([^\d\w])/gi, '$1$3 September $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-10-([1-3]\d)([^\d\w])/gi, '$1$3 October $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-11-([1-3]\d)([^\d\w])/gi, '$1$3 November $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-12-([1-3]\d)([^\d\w])/gi, '$1$3 December $2$4');
//unprotect urls with embedded ISO dates etc
txt.value=txt.value.replace(/(\d{4})zz(\-\d\d-\d\d)/gi, '$1$2');
// var txt = document.editform.wpSummary;
// var summary = "convert from [[ISO 8601|ISO date formats]], [[wp:overlink]]";
// if (txt.value.indexOf(summary) == -1) {
// if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {
// txt.value += " | ";
// }
// txt.value += summary;
// }
// document.editform.wpDiff.click();
}
function delink_ISO_to_mdy() {
var txt = document.editform.wpTextbox1;
//protect urls with embedded ISO dates etc
txt.value=txt.value.replace(/((?:\\|\/|\-)\d{4})(\-\d\d-\d\d(?:\\|\/|\-))/gi
, '$1zz$2');
txt.value=txt.value.replace(/((?:\\|\/|\-)\d{4})(\-\d\d-\d\d)/gi, '$1zz$2');
txt.value=txt.value.replace(/(\d{4})(\-\d\d-\d\d(?:\\|\/|\-))/gi, '$1zz$2');
txt.value=txt.value.replace(/\[\[(\d{4})-01-0(\d)\]\]/gi, 'January $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-02-0(\d)\]\]/gi, 'February $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-03-0(\d)\]\]/gi, 'March $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-04-0(\d)\]\]/gi, 'April $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-05-0(\d)\]\]/gi, 'May $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-06-0(\d)\]\]/gi, 'June $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-07-0(\d)\]\]/gi, 'July $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-08-0(\d)\]\]/gi, 'August $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-09-0(\d)\]\]/gi, 'September $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-10-0(\d)\]\]/gi, 'October $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-11-0(\d)\]\]/gi, 'November $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-12-0(\d)\]\]/gi, 'December $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-01-([1-3]\d)\]\]/gi, 'January $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-02-([1-3]\d)\]\]/gi, 'February $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-03-([1-3]\d)\]\]/gi, 'March $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-04-([1-3]\d)\]\]/gi, 'April $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-05-([1-3]\d)\]\]/gi, 'May $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-06-([1-3]\d)\]\]/gi, 'June $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-07-([1-3]\d)\]\]/gi, 'July $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-08-([1-3]\d)\]\]/gi, 'August $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-09-([1-3]\d)\]\]/gi, 'September $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-10-([1-3]\d)\]\]/gi, 'October $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-11-([1-3]\d)\]\]/gi, 'November $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})-12-([1-3]\d)\]\]/gi, 'December $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[01-0(\d)\]\]/gi, 'January $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[02-0(\d)\]\]/gi, 'February $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[03-0(\d)\]\]/gi, 'March $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[04-0(\d)\]\]/gi, 'April $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[05-0(\d)\]\]/gi, 'May $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[06-0(\d)\]\]/gi, 'June $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[07-0(\d)\]\]/gi, 'July $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[08-0(\d)\]\]/gi, 'August $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[09-0(\d)\]\]/gi, 'September $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[10-0(\d)\]\]/gi, 'October $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[11-0(\d)\]\]/gi, 'November $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[12-0(\d)\]\]/gi, 'December $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[01-([1-3]\d)\]\]/gi, 'January $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[02-([1-3]\d)\]\]/gi, 'February $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[03-([1-3]\d)\]\]/gi, 'March $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[04-([1-3]\d)\]\]/gi, 'April $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[05-([1-3]\d)\]\]/gi, 'May $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[06-([1-3]\d)\]\]/gi, 'June $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[07-([1-3]\d)\]\]/gi, 'July $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[08-([1-3]\d)\]\]/gi, 'August $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[09-([1-3]\d)\]\]/gi, 'September $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[10-([1-3]\d)\]\]/gi, 'October $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[11-([1-3]\d)\]\]/gi, 'November $2, $1');
txt.value=txt.value.replace(/\[\[(\d{4})\]\]-\[\[12-([1-3]\d)\]\]/gi, 'December $2, $1');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-01-0(\d)([^\d\w])/gi, '$1January $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-02-0(\d)([^\d\w])/gi, '$1February $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-03-0(\d)([^\d\w])/gi, '$1March $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-04-0(\d)([^\d\w])/gi, '$1April $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-05-0(\d)([^\d\w])/gi, '$1May $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-06-0(\d)([^\d\w])/gi, '$1June $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-07-0(\d)([^\d\w])/gi, '$1July $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-08-0(\d)([^\d\w])/gi, '$1August $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-09-0(\d)([^\d\w])/gi, '$1September $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-10-0(\d)([^\d\w])/gi, '$1October $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-11-0(\d)([^\d\w])/gi, '$1November $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-12-0(\d)([^\d\w])/gi, '$1December $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-01-([1-3]\d)([^\d\w])/gi, '$1January $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-02-([1-3]\d)([^\d\w])/gi, '$1February $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-03-([1-3]\d)([^\d\w])/gi, '$1March $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-04-([1-3]\d)([^\d\w])/gi, '$1April $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-05-([1-3]\d)([^\d\w])/gi, '$1May $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-06-([1-3]\d)([^\d\w])/gi, '$1June $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-07-([1-3]\d)([^\d\w])/gi, '$1July $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-08-([1-3]\d)([^\d\w])/gi, '$1August $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-09-([1-3]\d)([^\d\w])/gi, '$1September $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-10-([1-3]\d)([^\d\w])/gi, '$1October $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-11-([1-3]\d)([^\d\w])/gi, '$1November $3, $2$4');
txt.value=txt.value.replace(/([^\d\w])(\d{4})-12-([1-3]\d)([^\d\w])/gi, '$1December $3, $2$4');
//unprotect urls with embedded ISO dates etc
txt.value=txt.value.replace(/(\d{4})zz(\-\d\d-\d\d)/gi, '$1$2');
// var txt = document.editform.wpSummary;
// var summary = "convert from [[ISO 8601|ISO date formats]], [[wp:overlink]]";
// if (txt.value.indexOf(summary) == -1) {
// if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {
// txt.value += " | ";
// }
// txt.value += summary;
// }
// document.editform.wpDiff.click();
}
function delink_year_in_X(){
var txt=document.editform.wpTextbox1;
txt.value=txt.value.replace(/{{(?:avyear|by|fy|ly|mlby|mlb\syear|scy|sdy)\|(\d{1,4})}}/gi, '$1');
txt.value=txt.value.replace(/\[\[\d{1,4}\sin\s\w+\|(\d{1,4})\]\]/gi, '$1');
edit_summary();
}
var linkmap=[];
function protect_dates(){
var txt=document.editform.wpTextbox1;
txt.value=txt.value.replace(/Image:[^|]+/gi, function(img){
linkmap.push(img);
return "\x02"+(linkmap.length-1)+"\x03";
});
//protect certain dates
// txt.value=txt.value.replace(/([^\d]7)\s(july)/gi, '$1xx$2');
txt.value=txt.value.replace(/(\[\[May)\s(1968\]\])/gi, '$1xx$2');
txt.value=txt.value.replace(/(\[\[(?:2300|2000))\s(AD\]\])/gi, '$1xx$2');
txt.value=txt.value.replace(/(\[\[(?:112|911|999))(\]\])/gi, '$1xx$2');
}
function unprotect_dates(){
var txt=document.editform.wpTextbox1;
//unprotect certain dates
// txt.value=txt.value.replace(/(7)xx(july)/gi, '$1 $2');
txt.value=txt.value.replace(/(\[\[May)xx(1968\]\])/gi, '$1 $2');
txt.value=txt.value.replace(/(\[\[(?:2300|2000))xx(AD]\])/gi, '$1 $2');
txt.value=txt.value.replace(/(\[\[(?:112|911|999))xx(\]\])/gi, '$1$2');
txt.value=txt.value.replace(/\x02([0-9]+)\x03/g, function(x, n){
return linkmap[n];
});
}
function remove_leading_zeros_from_linked_dates () {
var txt=document.editform.wpTextbox1;
//remove leading zero from linked date
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s0(\d)(?:th|st|nd|rd|)\]\]/gi, '[[$1 $2]]');
txt.value=txt.value.replace(/\[\[0(\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\]/gi, '[[$1 $2]]');
}
function remove_leading_zeros_from_nonlinked_dates () {
var txt=document.editform.wpTextbox1;
//remove leading zero from nonlinked date
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s0(\d)(?:th|st|nd|rd|)(,?\s\d{4})([^\w\d][^\d])/gi, '$1$2 $3$4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])0(\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)(\s\d{4})([^\w\d][^\d])/gi, '$1$2 $3$4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s0(\d)(?:th|st|nd|rd|)([^\w\d][^\d])/gi, '$1$2 $3$4');
txt.value=txt.value.replace(/([^\d][^\w\d])0(\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)([^\w\d][^\d])/gi, '$1$2 $3$4');
}
function code_delink_dates_to_dmy () {
var txt=document.editform.wpTextbox1;
protect_dates();
part_dates();
remove_leading_zeros_from_linked_dates ();
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\],?\s?\[\[(\d{1,4})\]\]/gi, '$2 $1 $3');
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\],?\s?(\d{1,4})([^\w\d])/gi, '$2 $1 $3$4');
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\]/gi, '$2 $1');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\],?\s?\[\[(\d{1,4})\]\]/gi, '$1 $2 $3');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\],?\s?(\d{1,4})([^\w\d])/gi, '$1 $2 $3$4');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\]/gi, '$1 $2');
//remove comma in International date format
txt.value=txt.value.replace(/(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?),?\s?(\d{1,4})([^\w\d])/gi, '$1 $2 $3$4');
//remove unlinked ordinal date formats
txt.value=txt.value.replace(/(?:the\s?)\s(\d?\d)(?:th|st|nd|rd|)(?:\sof\s?)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?),?\s?(\d{1,4})([^\w\d])/gi, '$1 $2 $3$4');
//remove dts-simple template that links dates
txt.value=txt.value.replace(/{{dts-simple\|(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\|\s?(\d\d?)\|(\d{1,4})}}/gi, '$2 $1 $3');
//remove dts3 template that links dates
txt.value=txt.value.replace(/{{dts3\|(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\|(\d\d?)\|(\d{1,4})}}/gi, '$2 $1 $3');
//change deprecated dts2 template
txt.value=txt.value.replace(/{{dts2\|(.*?)\|(.*?)\|(.*?)}}/gi,'{{dts|format=dmy|$3|$2|$1}}');
//fix dts template
txt.value=txt.value.replace(/(\{\{dts\|[^}]*format=)mdy/gi,'$1dmy');
txt.value=txt.value.replace(/({{dts\|)/gi, '$1format=dmy|');
txt.value=txt.value.replace(/({{dts\|[^}]*)format=dmy\|([^}]*format=dmy)/gi, '$1$2');
//change deprecated birth and death templates
txt.value=txt.value.replace(/({{(?:Birth|Death|release|start date)[^}]*)\|mf=ye?s?/gi, '$1');
txt.value=txt.value.replace(/({{(?:Birth|Death|release|start date)[^|]*\|)/gi, '$1df=yes|');
txt.value=txt.value.replace(/({{(?:Birth|Death|release|start date)[^|]*\|)df=ye?s?\|([^}]*df=ye?s?)/gi, '$1$2');
unprotect_dates();
}
function code_delink_dates_to_mdy() {
var txt=document.editform.wpTextbox1;
protect_dates();
part_dates();
remove_leading_zeros_from_linked_dates ();
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\],?\s?\[\[(\d{1,4})\]\]/gi, '$2 $1, $3');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\],?\s?(\d{1,4})([^\w\d])/gi, '$2 $1, $3$4');
txt.value=txt.value.replace(/\[\[(\d?\d)(?:th|st|nd|rd|)\s(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\]\]/gi, '$2 $1');
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\],?\s?\[\[(\d{1,4})\]\]/gi, '$1 $2, $3');
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\],?\s(\d{1,4})([^\w\d])/gi, '$1 $2, $3$4');
txt.value=txt.value.replace(/\[\[(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s(\d?\d)(?:th|st|nd|rd|)\]\]/gi, '$1 $2');
//remove dts-simple template that links dates
txt.value=txt.value.replace(/{{dts-simple\|(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\|\s?(\d\d?)\|(\d{1,4})}}/gi, '$1 $2, $3');
//remove dts3 template that links dates
txt.value=txt.value.replace(/{{dts3\|(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\|(\d\d?)\|(\d{1,4})}}/gi, '$1 $2, $3');
//change deprecated dts2 template
txt.value=txt.value.replace(/{{dts2\|(.*?)\|(.*?)\|(.*?)}}/gi, '{{dts|link=off|$3|$2|$1}}');
//fix dts template
txt.value=txt.value.replace(/({{dts\|)/gi, '$1link=off|');
txt.value=txt.value.replace(/({{dts\|)link=off\|([^}]*link=off)/gi, '$1$2');
//change deprecated birth and death templates
txt.value=txt.value.replace(/({{(?:Birth|Death|release)[^}]*)\|df=ye?s?/gi, '$1');
txt.value=txt.value.replace(/({{(?:Birth|Death|release)[^|]*\|)/gi, '$1mf=yes|');
txt.value=txt.value.replace(/({{(?:Birth|Death|release)[^|]*\|)mf=ye?s?\|([^}]*mf=ye?s?)/gi, '$1$2');
unprotect_dates();
}
function button_delink_dates_to_dmy() {
code_delink_dates_to_dmy();
edit_summary();
}
function button_delink_dates_to_mdy() {
code_delink_dates_to_mdy();
edit_summary();
}
function all_dates_to_dmy(){
var txt=document.editform.wpTextbox1;
// insert 'dmy' template
if (txt.value.search(/{{use dmy dates}}/gi) == -1)
{
txt.value='{{use dmy dates}}\r\n'+txt.value;
}
protect_dates();
part_dates();
code_delink_dates_to_dmy();
remove_leading_zeros_from_nonlinked_dates ();
//repeat protect dates because 'unprotect dates' function is within 'delink dates' function
protect_dates();
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|),?\s(\d{1,4})([^\w\d][^\d])/gi, '$1$3 $2 $4$5');
//Repeat line to capture some instances that get missed first time
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|),?\s(\d{1,4})([^\w\d][^\d])/gi, '$1$3 $2 $4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|)([^\w\d][^\d])/gi, '$1$3 $2$4');
//Repeat line to capture some instances that get missed first time
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|)([^\w\d][^\d])/gi, '$1$3 $2$4');
//Month+day_number "March 7th" -> "March 7"
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s(\d{1,4})([^\w\d][^\d])/gi, '$1$2 $3 $4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)([^\w\d][^\d])/gi, '$1$2 $3$4');
//year: temporary change to protect accessyear. Undone below at #1
txt.value=txt.value.replace(/(accessyear\s?=\s?)\[\[(\d{1,4})\]\]/gi, '$1xx$2xx');
//year: now remove unprotected linked years
txt.value=txt.value.replace(/\[\[(\d{1,4})\]\]/gi, '$1');
//year: #1. Undo temporary change to protect accessyear and date preference dates
txt.value=txt.value.replace(/xx(\d{1,4})xx/gi, '[[$1]]');
unprotect_dates();
// edit_summary();
}
function all_dates_to_mdy(){
var txt=document.editform.wpTextbox1;
// insert 'mdy' template
if (txt.value.search(/{{use mdy dates}}/gi) == -1)
{
txt.value='{{use mdy dates}}\r\n'+txt.value;
}
protect_dates();
part_dates();
code_delink_dates_to_mdy();
remove_leading_zeros_from_nonlinked_dates ();
//repeat protect dates because 'unprotect dates' function is within 'delink dates' function
protect_dates();
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s(\d{1,4})([^\w\d][^\d])/gi, '$1$3 $2, $4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)([^\w\d][^\d])/gi, '$1$3 $2$4');
//repeat previous two bits of code to capture some date ranges that were missed first time round
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s(\d{1,4})([^\w\d][^\d])/gi, '$1$3 $2, $4$5');
txt.value=txt.value.replace(/([^\d][^\w\d])([0123]?\d)(?:th|st|nd|rd|)\s(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)([^\w\d][^\d])/gi, '$1$3 $2$4');
//Month+day_number "March 7th" -> "March 7"
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|)(,?\s)(\d{1,4})([^\w\d][^\d])/gi, '$1$2 $3$4$5$6');
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary|\.)?|Feb(?:ruary|\.)?|Mar(?:ch|\.)?|Apr(?:il|\.)?|May\.?|Jun(?:e|\.)?|Jul(?:y|\.)?|Aug(?:ust|\.)?|Sep(?:tember|\.)?|Oct(?:ober|\.)?|Nov(?:ember|\.)?|Dec(?:ember|\.)?)\s([0123]?\d)(?:th|st|nd|rd|)([^\w\d][^\d])/gi, '$1$2 $3$4');
//add comma when missing
txt.value=txt.value.replace(/([^\d][^\w\d])(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\s([0123]?\d)(?:th|st|nd|rd|)(\s)(\d{1,4})([^\w\d][^\d])/gi, '$1$2 $3,$4$5$6');
//year: temporary change to protect accessyear. Undone below at #1
txt.value=txt.value.replace(/(accessyear\s?=\s?)\[\[(\d{1,4})\]\]/gi, '$1xx$2xx');
//year: now remove unprotected linked years
txt.value=txt.value.replace(/\[\[(\d{1,4})\]\]/gi, '$1');
//year: #1. Undo temporary change to protect accessyear and date preference dates
txt.value=txt.value.replace(/xx(\d{1,4})xx/gi, '[[$1]]');
unprotect_dates();
// edit_summary();
}
function edit_summary(){
// Add a tag to the summary box
var txt=document.editform.wpSummary;
var summary = "unified date formats per [[WP:MOSNUM]], rem [[wp:overlink]]";
if (txt.value.indexOf(summary) == -1) {
if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {
txt.value += " | ";
}
txt.value += summary;
}
// document.editform.wpDiff.click();
}
function all_dates_to_dmy_and_common_terms() {
delink_ISO_to_dmy();
all_dates_to_dmy();
CommonTerms();
// edit_summary();
}
function all_dates_to_mdy_and_common_terms() {
delink_ISO_to_mdy();
all_dates_to_mdy();
CommonTerms();
// edit_summary();
}
function ISO_to_dmy() {
delink_ISO_to_dmy();
edit_summary();
}
function ISO_to_mdy() {
delink_ISO_to_mdy();
edit_summary();
}
function align_to_dmy() {
all_dates_to_dmy();
edit_summary();
}
function align_to_mdy() {
all_dates_to_mdy();
edit_summary();
}
function BritEnglish(){
var txt=document.editform.wpTextbox1;
txt.value=txt.value.replace(/\[\[(?:analyze|canceled)\|(analyse|cancelled)\]\]/gi, '$1');
//txt.value=txt.value.replace(/(?:airplane|aging|aluminum|analyze|canceled|catalog|center|color|defense|dialogue|diarrhea|gray|fl?avor|fulfill|install|jewelry|judgment|curb|labor|maneuver|organization|skeptic|theater|traveling|tire|yogurt)\|(aeroplane|ageing|aluminium|analyse|cancelled|catalogue|centre|colour|defence|dialogue|diarrhoea|grey|fl?avour|fulfil|instal|jewellery|judgement|kerb|labour|manoeuvre|organisation|sceptic|theatre|travelling|tyre|yoghurt)/gi, '$1');
// Add a tag to the summary box
var txt=document.editform.wpSummary;
var summary = "per [[WP:ENGVAR]]";
if (txt.value.indexOf(summary) == -1) {
if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {
txt.value += " | ";
}
txt.value += summary;
}
// document.editform.wpDiff.click();
}
function CommonTerms(){
var txt=document.editform.wpTextbox1;
txt.value=txt.value.replace(/\[\[(African?|Alaskan?|American?|Antarctican?|Arctic\sOcean|Arab|Arabic|Argentina|Argentinian||Asian?|Atlantic\sOcean|Australian?|Austrian?|Beijing|Belgian|Belgium|Berlin|Bra[sz]il|Bra[sz]ilian|British|British\sIsles|Californian?|Canada|Canadian|Central\sAmerican?|Chicago|China|Chinese|Detroit|Korean?|Paris|People's\sRepublic\sof\sChina|Philippines|Czech\sRepublic|Czech|Danish|Denmark|England|English|Europe|European|France|French|Finland|Finnish|Florida|Germany?|Great\sBritain|Greece|Greek|Hawaii|Hawaiian|Hungary|Hungarian|Hong\sKong|Indian?|Indian\sOcean|Ireland|Irish|Italy|Italian|Japan|Japanese|Jewish|London|Los\sAngeles|Mexican|Mexico|Mexico\sCity|Middle\sEast|Miami|Middle\sEastern|Moscow|the\sNetherlands|Netherlands|New\sDelhi|New\sYork|New\sYork\sCity|New\sZealand|New\sZealander|North\sAmerican?|Norway|Norwegian|Pacific|Pacific\sOcean|Poland|Polish|Portugal|Portuguese|Queensland|Rome|Russian?|San\sFrancisco|San\sFrancisco\,?\sCalifornia|Scandinavian?|Scotland|Scottish|Shanghai|South\sAfrican?|Arctic\sOcean|South\sAmerican?|South\sKorean?|Spain|Spanish|Sweden|Swedish|Switzerland|Swiss|Sydney|Texan|Texas|Tokyo|Toronto|United\sKingdom|U\.K\.|UK|United\sStates|United\sStates\sof\sAmerica|US|U\.S\.|USA|U\.S\.A\.|Vancouver|Washington\,?\sD\.C\.|Wales|Welsh|Western\sAustralian?|West\sGermany?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:African?|Alaskan?|American?|Antarctican?|Arctic\sOcean|Arab|Arabic|Argentina|Argentinian||Asian?|Atlantic\sOcean|Australian?|Austrian?|Beijing|Belgian|Belgium|Berlin|Bra[sz]il|Bra[sz]ilian|British|British\sIsles|Californian?|Canada|Canadian|Central\sAmerican?|Chicago|China|Chinese|Detroit|Korean?|Paris|People's\sRepublic\sof\sChina|Philippines|Czech\sRepublic|Czech|Danish|Denmark|England|English|Europe|European|France|French|Finland|Finnish|Florida|Germany?|Great\sBritain|Greece|Greek|Hawaii|Hawaiian|Hungary|Hungarian|Hong\sKong|Indian?|Indian\sOcean|Ireland|Irish|Italy|Italian|Japan|Japanese|Jewish|London|Los\sAngeles|Mexican|Mexico|Mexico\sCity|Middle\sEast|Miami|Middle\sEastern|Moscow|the\sNetherlands|Netherlands|New\sDelhi|New\sYork|New\sYork\sCity|New\sZealand|New\sZealander|North\sAmerican?|Norway|Norwegian|Pacific|Pacific\sOcean|Poland|Polish|Portugal|Portuguese|Queensland|Rome|Russian?|San\sFrancisco|San\sFrancisco\,?\sCalifornia|Scandinavian?|Scotland|Scottish|Shanghai|South\sAfrican?|Arctic\sOcean|South\sAmerican?|South\sKorean?|Spain|Spanish|Sweden|Swedish|Switzerland|Swiss|Sydney|Texan|Texas|Tokyo|Toronto|United\sKingdom|U\.K\.|UK|United\sStates|United\sStates\sof\sAmerica|US|U\.S\.|USA|U\.S\.A\.|Vancouver|Wales|Welsh|Western\sAustralian?|West\sGermany?)\|(African?|Alaskan?|American?|Antarctican?|Arctic\sOcean|Arab|Arabic|Argentina|Argentinian||Asian?|Atlantic\sOcean|Australian?|Austrian?|Beijing|Belgian|Belgium|Berlin|Bra[sz]il|Bra[sz]ilian|British|British\sIsles|Californian?|Canada|Canadian|Central\sAmerican?|Chicago|China|Chinese|Detroit|Korean?|Paris|People's\sRepublic\sof\sChina|Philippines|Czech\sRepublic|Czech|Danish|Denmark|England|English|Europe|European|France|French|Finland|Finnish|Florida|Germany?|Great\sBritain|Greece|Greek|Hawaii|Hawaiian|Hungary|Hungarian|Hong\sKong|Indian?|Indian\sOcean|Ireland|Irish|Italy|Italian|Japan|Japanese|Jewish|London|Los\sAngeles|Mexican|Mexico|Mexico\sCity|Middle\sEast|Miami|Middle\sEastern|Moscow|the\sNetherlands|Netherlands|New\sDelhi|New\sYork|New\sYork\sCity|New\sZealand|New\sZealander|North\sAmerican?|Norway|Norwegian|Pacific|Pacific\sOcean|Poland|Polish|Portugal|Portuguese|Queensland|Rome|Russian?|San\sFrancisco|San\sFrancisco\,?\sCalifornia|Scandinavian?|Scotland|Scottish|Shanghai|South\sAfrican?|Arctic\sOcean|South\sAmerican?|South\sKorean?|Spain|Spanish|Sweden|Swedish|Switzerland|Swiss|Sydney|Texan|Texas|Tokyo|Toronto|United\sKingdom|U\.K\.|UK|United\sStates|United\sStates\sof\sAmerica|US|U\.S\.|USA|U\.S\.A\.|Vancouver|Washington\,?\sD\.C\.|Wales|Welsh|Western\sAustralian?|West\sGermany?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:African?|Alaskan?|American?|Antarctican?|Arctic\sOcean|Arab|Arabic|Argentina|Argentinian||Asian?|Atlantic\sOcean|Australian?|Austrian?|Beijing|Belgian|Belgium|Berlin|Bra[sz]il|Bra[sz]ilian|British|British\sIsles|Californian?|Canada|Canadian|Central\sAmerican?|Chicago|China|Chinese|Detroit|Korean?|Paris|People's\sRepublic\sof\sChina|Philippines|Czech\sRepublic|Czech|Danish|Denmark|England|English|Europe|European|France|French|Finland|Finnish|Florida|Germany?|Great\sBritain|Greece|Greek|Hawaii|Hawaiian|Hungary|Hungarian|Hong\sKong|Indian?|Indian\sOcean|Ireland|Irish|Italy|Italian|Japan|Japanese|Jewish|London|Los\sAngeles|Mexican|Mexico|Mexico\sCity|Middle\sEast|Miami|Middle\sEastern|Moscow|the\sNetherlands|Netherlands|New\sDelhi|New\sYork|New\sYork\sCity|New\sZealand|New\sZealander|North\sAmerican?|Norway|Norwegian|Pacific|Pacific\sOcean|Poland|Polish|Portugal|Portuguese|Queensland|Rome|Russian?|San\sFrancisco|San\sFrancisco\,?\sCalifornia|Scandinavian?|Scotland|Scottish|Shanghai|South\sAfrican?|Arctic\sOcean|South\sAmerican?|South\sKorean?|Spain|Spanish|Sweden|Swedish|Switzerland|Swiss|Sydney|Texan|Texas|Tokyo|Toronto|United\sKingdom|U\.K\.|UK|United\sStates|United\sStates\sof\sAmerica|US|U\.S\.|USA|U\.S\.A\.|Vancouver|Wales|Welsh|Western\sAustralian?|West\sGermany?)\s\(?(?:language|people)\)?\|(African?|Alaskan?|American?|Antarctican?|Arctic\sOcean|Arab|Arabic|Argentina|Argentinian||Asian?|Atlantic\sOcean|Australian?|Austrian?|Beijing|Belgian|Belgium|Berlin|Bra[sz]il|Bra[sz]ilian|British|British\sIsles|Californian?|Canada|Canadian|Central\sAmerican?|Chicago|China|Chinese|Detroit|Korean?|Paris|People's\sRepublic\sof\sChina|Philippines|Czech\sRepublic|Czech|Danish|Denmark|England|English|Europe|European|France|French|Finland|Finnish|Florida|Germany?|Great\sBritain|Greece|Greek|Hawaii|Hawaiian|Hungary|Hungarian|Hong\sKong|Indian?|Indian\sOcean|Ireland|Irish|Italy|Italian|Japan|Japanese|Jewish|London|Los\sAngeles|Mexican|Mexico|Mexico\sCity|Middle\sEast|Miami|Middle\sEastern|Moscow|the\sNetherlands|Netherlands|New\sDelhi|New\sYork|New\sYork\sCity|New\sZealand|New\sZealander|North\sAmerican?|Norway|Norwegian|Pacific|Pacific\sOcean|Poland|Polish|Portugal|Portuguese|Queensland|Rome|Russian?|San\sFrancisco|San\sFrancisco\,?\sCalifornia|Scandinavian?|Scotland|Scottish|Shanghai|South\sAfrican?|Arctic\sOcean|South\sAmerican?|South\sKorean?|Spain|Spanish|Sweden|Swedish|Switzerland|Swiss|Sydney|Texan|Texas|Tokyo|Toronto|United\sKingdom|U\.K\.|UK|United\sStates|United\sStates\sof\sAmerica|US|U\.S\.|USA|U\.S\.A\.|Vancouver|Washington\,?\sD\.C\.|Wales|Welsh|Western\sAustralian?|West\sGermany?)\]\]/gi, '$1');
// media-related
txt.value=txt.value.replace(/\[\[(activist|art|artist|athlete|athletics|author|basketball|bass guitar|businessm[ae]n|celebrity|cinema|clergy|comedians?|composers?|conducting|conductors?|criminals?|dancer?|dancing|designers?|dis[ck] jockey|drummer|entrepreneur|football|footballers?|football\splayers?|groups?|gymnast|gymnastics|hackers?|journalis[mt]s?|models?|music|music producer|musicians?|novelist|piano|pianists?|playwright|politics|politican|priest|radio|radio station|record producer|singer-songwriters?|songs?|songwriter|songwriting|socialite|synthesi[sz]ers?|televisions?|television personality|television presenter|television producer|TV personality|TV presenter|TV producer|theater|theatre|trumpet|trumpeter|writer)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[actor\|(actors?|actress|actresses|thesbian)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(actors?|actress|actresses|thesbians?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[model\s\(person\)\|(model)\]\]/gi, '$1');
// proper nouns
txt.value=txt.value.replace(/\[\[(ABC|BBC|BBC News|BBC One|BBC Two|BBC Radio One|BBC Radio Two|BBC Radio Three|BBC Radio Four|Business\s?Week|CBS|CNN|Fox News|Fox News Channel|Guardian Unlimited|iTunes|ITMS|The Los Angeles Times|Los Angeles Times|L.?A.?\sTimes|MSN|MTV|The New York Times|New York Times|Newsweek|NBC|Rolling Stone|Times Online|USA\sToday|USAToday|You\s?Tube)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[Time\s\(magazine\)\|(Time|Time Magazine)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[Billboard\s\(magazine\)\|(Billboard|Billboard Magazine)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(Time|Time Magazine|Billboard|Billboard Magazine)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(Google|Yahoo!?|MSN)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[Allmusic\|(AMG|All\s?Music\s?Guide)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(AMG|All\s?Music\s?Guide|Allmusic)\]\]/gi, '$1');
// geo-politics
txt.value=txt.value.replace(/\[\[United States dollar\|(USD|US\$|U\.S\.\sdollar|\$)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(US dollar|United States dollar|U\.S\.\sdollar|USD|US\$|\$)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[United Nations\|(UN|U\.N\.|UNO|U\.N\.O\.)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(United Nations|UN|U\.N\.|UNO|U\.N\.O\.)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[European\sUnion\|(EU|E\.U\.)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(European\sUnion|EU|E\.U\.)\]\]/g, '$1');
txt.value=txt.value.replace(/\[\[(?:President of the United States|President of the United States of America|United States President|POTUS)\|(U\.S\.\sPresident|President|President of the United States of America|United States President|POTUS)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(President of the United States|United States President|U\.?S\.?\sPresident|President of the United States of America|United States President|POTUS)\]\]/gi, '$1');
//music & media
txt.value=txt.value.replace(/\[\[(chat|chat show|chat-show|drama|game-show|soap|soap opera|sit-?com|situation comedy)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:document[aeo]ry|document[aeo]ry film)\|(documentarians?|documentaries|documentary (film)|documentary definition|documentary films?|documentary movie|documentary series|documentary television films?|documentary television series|documentary television show|documentary tv series|document[aeo]?ry|film documentaries|film documentary|making-of documentary|online documentary|political documentaries|political documentary|video documentary)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(documentarians?|document[aeo]ry|document[aeo]ries|documentary (film)|documentary films?|documentary movie|documentary series|documentary television films?|documentary television series|documentary television show|documentary tv series|document[aeo]?ry|film documentaries|film documentary|making-of documentary|online documentary|political documentaries|political documentary|video documentary)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(computers?|personal\scomputers?|PCs?|laptops?|laptop\scomputers?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(cassette|DVD|LP|VHS|video|music video)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[compact\sdis[ck]\|(CDs?|C\.D\.s?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(compact\sdis[ck]s?|CDs?|C\.D\.s?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[album\|(album track|albums? (music)|albums?|debut album|music albums?|opening track|record albums?|self titled debut album|self-titled debut album|sophomore album)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(album|album track|albums? \(music\)|albums?|debut album|music albums?|opening track|record albums?|self titled debut album|self-titled debut album|sophomore album)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[poetry\|(poems?|poets?|poetic)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(poetry|poems?|poets?|poetic)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:singing|singer)\|(singers?|vocals?|vocalists?|Pop\ssingers?|Female\svocals|Songstress|Clean\svocals|Singer\s\(music\)|Pop\ssingers)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(singing|singers?|vocals?|vocalists?|Pop\ssingers?|Female\svocals|Songstress|Clean\svocals|Singer\s\(music\)|Pop\ssingers)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(singer|lead\svocalist)\|(lead\svocals|lead\ssinger)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(lead\svocalist|lead\svocals|lead\ssinger|front man|frontman)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[backing\svocalists?\|(backing\svocals|backing\ssinger)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(backing\svocalists?|backing\svocals|backing\ssinger)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:rock\smusic|rock\s\(music\))\|(rock|rock\smusician|rock\sgroup|rock\sstandard|rawk|rock\ssong|rock\santhem|rockmusic)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(rock\smusic|rock|rock\smusician|rock\sgroup|rock\sstandard|rawk|rock\ssong|rock\santhem||rockmusic)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[pop\smusic\|(pop|pop\smusicians?|pop\sgroups?|pop\ssongs?|pop\smusic|pop\s\(music\)|popmusic|pop\ssensibility|pop\smusic\s\(genre\)|new\spop)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(pop\smusic|pop|pop\smusicians?|pop\sgroups?|pop\ssongs?|pop\smusic|pop\s\(music\)|popmusic|pop\ssensibility|pop\smusic\s\(genre\)|new\spop)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[musical\sensemble\|(group|band|rock\sbands?|Instrumental\sensemble|Rock\sgroups?|list\sof\smusical\sensembles|musical\sgroup|music\sband|music\sgroup|musical\sband|bar\sband|group\s\(music\)|musical\sensembles?|music\sensemble|band\s\(music\)|pop\sband)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(musical\sensemble|group|band|rock\sbands?|Instrumental\sensemble|Rock\sgroups?|list\sof\smusical\sensembles|musical\sgroup|music\sband|music\sgroup|musical\sband|bar\sband|group\s\(music\)|musical\sensembles?|music\sensemble|band\s\(music\)|pop\sband)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[guitar\|(guitarist?|guitars?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(guitars?|guitarists?|guitar music|blues guitar|rock guitar)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[bass\sguitar\|(bass|bassist|bass guitarists?|electric\sbass|metal\sbass|bass\s\(guitar\)|electric\sbass\sguitar|Alternate\sbass|bass\sguitars?|electric\sbass\sguitar|fretless\sbass\sguitar|base\sguitar|bass\sguitar\s\(instrument\))\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(bass|bassist|bass guitarists?|electric\sbass|metal\sbass|bass\s\(guitar\)|electric\sbass\sguitar|Alternate\sbass|bass\sguitars?|electric\sbass\sguitar|fretless\sbass\sguitar|base\sguitar|bass\sguitar\s\(instrument\))\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[keyboard\sinstrument\|(keyboards?|keyboardists?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(keyboard\sinstruments?|keyboards?|keyboardists?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[drum kit\|(drums?|drumkits?|drumming|drummers?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(drum kit|drums?|drumkits?|drumming|drummers?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[percussion\sinstrument\|(percussions?|percussionists?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(percussion\sinstrument|percussions?|percussionists?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[wind\sinstrument\|(wind\sinstruments?|wind)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(wind\sinstruments?|wind)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[woodwind\sinstrument\|(woodwind\sinstruments?|woodwind)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(woodwind\sinstruments?|woodwind)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[fashion\sdesign\|(fashion\sdesigner|designers?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(fashion\sdesign|fashion\sdesigners?|designers?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[film\|(films?|filming|movies?|big\sscreen|motion pictures?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(film|films?|filming|movies?|big\sscreen|motion pictures?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[film\sdirector\|(film\sdirector|director)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(film\sdirector|film\sdirector|director)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[film\sproducer\|(film\sproducer|producer)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(film\sproducer|film\sproducer|producer)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[music\sarranger\|(music\sarranger|arranger)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(music\sarranger|music\sarranger|arranger)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[record\sproducer\|(record\sproducer|produce[drs]?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(record\sproducer|record\sproducer|producer)\]\]/gi, '$1');
// sport
txt.value=txt.value.replace(/\[\[tennis\|(tennis|tennis\scourts?|tennis players?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(tennis|tennis\scourts?|tennis players?|grass courts?|clay courts?|hard courts?|grand\sslam)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[The Championships, Wimbledon\|(Wimbledon|Wimbledon championships?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(The Championships, Wimbledon|Wimbledon|Wimbledon championships?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[US Open\s\(tennis\)\|(U\.?S\.?\sOpen)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[Grand Slam\s\(tennis\)\|(Grand Slam)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(U\.?S\.?\sOpen|French Open|Australian Open)\]\]/gi, '$1');
// everyday nouns
txt.value=txt.value.replace(/\[\[(assault|advertising|animal|alcohol|chairman|charity|crime|dentist|doctor|drug|economy|fire|gas|gasoline|Internet|land|metal|mineral|money|oil|paper|petrol|plant|plastic|president|sea|time|water)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[economics\|(economics?|economists?|economical)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(economics?|economists?|economical)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(non-?profit\sorgani[sz]ations?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[charitable\sorgani[sz]ation\|(charitable\sorgani[sz]ations?|charity|charities)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(charitable\sorgani[sz]ations?|charity|charities)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[non-governmental\sorgani[sz]ation\|(non-?governmental\sorgani[sz]ations?|NGOs?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(non-?governmental\sorgani[sz]ations?|NGOs?)\]\]/gi, '$1');
// lifestyle & religion
txt.value=txt.value.replace(/\[\[(alcoholism|gays?|homosexual|multicultural|multi-cultural|religion|religious|vegetarians?|vegetarianism)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[vegetarianism\|(vegetarians?)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[christianity\|(christians?|christianity|christian\sethic|christian\sfaith)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(christianity\|christians?|christian\sethic|christian\sfaith)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:roman\scatholic|roman\scatholic\schurch|catholicism)\|(roman\scatholic|roman\scatholic\schurch|catholicism)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(roman\scatholics?|roman\scatholic\schurch|catholicism)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:jews|judaism)\|(jews?|jewish|judaism)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(jews?|jewish|judaism)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[marriage\|(marry|marries|married|married\scouple)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(marriage|marry|marries|married|married\scouple)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[divorce\|(divorces|divorced)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(divorce|divorces|divorced)\]\]/gi, '$1');
// common illnesses and causes of death
txt.value=txt.value.replace(/\[\[traffic\scollision\|(automobile\saccident|car\saccident|car\scrash|road\straffic\saccident|traffic\saccident)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(traffic\scollision|automobile\saccident|car\saccident|car\scrash|road\straffic\saccident|traffic\saccident)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(brain damage|cancer|clinical\sdepression|depression|fractures?|gunshot wounds?|murder|heart attack|shock|stroke|suicide)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(?:clinical\sdepression|depression\s\(mood\))\|(depression|depressed)\]\]/gi, '$1');
txt.value=txt.value.replace(/\[\[(clinical\sdepression|depression\s\(mood\)|depression|depressed)\]\]/gi, '$1');
edit_summary();
}
addOnloadHook(function () {
if(document.forms.editform) {
addPortletLink('p-tb', 'javascript:CommonTerms()', 'Delink common terms', 't-dmy', 'Regexp common terms', '', '');
addPortletLink('p-tb', 'javascript:run_formatgeneral()', 'Add metric units', 'ca-unitfixer', 'Fixes some unit formatting', '', '');
// addPortletLink('p-tb', 'javascript:button_delink_dates_to_dmy()', 'Delink dates to dmy', 't-dmy', 'day month', '', '');
// addPortletLink('p-tb', 'javascript:button_delink_dates_to_mdy()', 'Delink dates to mdy', 't-mdy', 'month day', '', '');
addPortletLink('p-tb', 'javascript:fix_common_errors()', 'Fix common errors', 't-dmy', 'day month', '', '');
addPortletLink('p-tb', 'javascript:ISO_to_dmy()', 'ISO dates to dmy', 't-dmy', 'day month', '', '');
addPortletLink('p-tb', 'javascript:ISO_to_mdy()', 'ISO dates to mdy', 't-mdy', 'month day', '', '');
addPortletLink('p-tb', 'javascript:BritEnglish()', 'British English', 't-dmy', 'converts to Brit English', '', '');
addPortletLink('p-tb', 'javascript:align_to_dmy()', 'Align to dmy', 't-dmy', 'day month', '', '');
addPortletLink('p-tb', 'javascript:align_to_mdy()', 'Align to mdy', 't-mdy', 'month day', '', '');
addPortletLink('p-tb', 'javascript:delink_year_in_X()' , 'Delink year-in-X dates', 't-yearinX', 'Regexp yearinX', '', '');
addPortletLink('p-tb', 'javascript:all_dates_to_dmy_and_common_terms()', 'All dates to dmy+common terms', 'ca-unitfixer', 'Fixes some unit formatting', '', '');
addPortletLink('p-tb', 'javascript:all_dates_to_mdy_and_common_terms()', 'All dates to mdy+common terms', 'ca-unitfixer', 'Fixes some unit formatting', '', '');
addPortletLink('p-tb', 'javascript:make_dates_bold()', 'Make dates bold', 'ca-unitfixer', 'Fixes some unit formatting', '', '');
}
});