Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
/// <nowiki>
	
	
/*$.when( mw.loader.using( ['mediawiki.util'] ), $.ready ).then( function () {
	
	
	
$( mw.util.addPortletLink( 'p-tb', '#', 'Create gallery', 't-AjaxQuickDeleteOnDemand' ) )
	
	.click( function ( e ) {
	
		e.preventDefault();
	
		importScript("User:Aschroet/gallery.js");
	
	});
	
	
	
});*/
if (!window.CeL) {
	window.CeL = { initializer: function() { CeL.run('application.net.wiki'); } };
	mw.loader.load('https://kanasimi.github.io/CeJS/ce.js');
}

function textSelect(inp, s, e) {
  e = e || s;
  if (inp.createTextRange) {
    var r = inp.createTextRange();
    r.collapse(true);
    r.moveEnd('characcter', e);
    r.moveStart('character', s);
    r.select();
  } else if (inp.setSelectionRange) {
    inp.focus();
    inp.setSelectionRange(s, e);
  }
}

function httpGet(theUrl) {
    var xmlHttp = null;
 
    xmlHttp = new XMLHttpRequest();
    xmlHttp.open("GET", theUrl, false);
    xmlHttp.send(null);
    return xmlHttp.responseText;
}

//https://www.mediawiki.org/wiki/API:Properties
function getDate() {
  var artName = mw.config.get("wgPageName");
  var json = httpGet("/w/api.php?format=json&action=query&titles=" + artName + "&prop=imageinfo&iiprop=metadata&format=json");
  var str = json.match(/DateTimeDigitized","value":"([\d: ]+)"/);
  var dateTimeString = "{{unknown|date}}";
  if (str) {
     dateTimeString = "{{According to Exif data|" + str[1].replace(":", '-').replace(":", '-') + "}}";
  }
  return dateTimeString; 
}

function convertDate(dateStr) {
	var regexp = /(\d+)\.{0,1} +([\wä\.]+) +(\d\d\d\d)/;
	var res = regexp.exec(dateStr);
	var dayStr, monthStr, yearStr;

	if (res!==null) {
		dayStr = res[1];
		monthStr = res[2];
		yearStr = res[3];
	} else {
		regexp = /([\wä]+) +(\d\d\d\d)/;
		res = regexp.exec(dateStr);
		if (res!==null) {
			dayStr = null;
			monthStr = res[1];
			yearStr = res[2];
		} else {
			return dateStr.replace(/<br.*\/>/, "").replace(/'+/, "").trim();
		}
	}
	var month = null;
	switch (monthStr) {
  		case "Januar":
  		case "January":
    	case "Jan.":
        	month = "01";
			break;
		case "Februar":
		case "February":
    	case "Feb.":
        	month = "02";
			break;
		case "März":
		case "March":
		case "Mär.":
        	month = "03";
			break;
		case "April":
    	case "Apr.":
        	month = "04";
			break;
		case "Mai":
		case "May":
        	month = "05";
			break;
		case "Juni":
		case "June":
    	case "Jun.":
        	month = "06";
			break;
		case "Juli":
		case "July":
    	case "Jul.":
        	month = "07";
			break;
		case "August":
    	case "Aug.":
        	month = "08";
			break;
		case "September":
    	case "Sept.":
    	case "Sep.":
        	month = "09";
			break;
		case "Oktober":
		case "October":
    	case "Okt.":
        	month = "10";
			break;
		case "November":
    	case "Nov.":
        	month = "11";
			break;
		case "Dezember":
		case "December":
    	case "Dez.":
        	month = "12";
			break;
	}
	if (month===null) {
		alert("Month could not be detected.");
	}
	var date;
	if (dayStr!==null) {
		var day = dayStr;
		if (dayStr.length==1) {
			day = "0"+ res[1];
		}
		date = yearStr + "-" + month + "-" + day;
	} else {
		date = yearStr + "-" + month;
	}
	return date;
}

function bilderFixDe() {
    var article = document.editform.wpTextbox1.value;
    if (article.indexOf("{{Information")!=-1) {
    	return;
    }

    var regexp = /Beschreibung *[:']+ *(.+) */i;
	var res = regexp.exec(article);
    if (res===null) {
    	alert("Beschreibung not found");
    }
	var description = res[1].trim();
	
	regexp = /Quelle *[:']+ *(.+) */i;
	res = regexp.exec(article);
    if (res===null) {
    	alert("Quelle not found");
    }
	var source = res[1].trim();
	
	regexp = /Datum *[:']+ *(.+) */i;
	res = regexp.exec(article);
	var dateStr = "";
    if (res===null) {
    	alert("Date not found");
    } else {
	   dateStr = convertDate(res[1].trim());
    }
	
	regexp = /Fotograf *[:']+ *(.+) */i;
	res = regexp.exec(article);
    if (res===null) {
    	alert("Author not found");
    }
	var author = res[1].trim();
	
	regexp = /Genehmigung *[:']+ *(.+) */i;
	res = regexp.exec(article);
	var permission = "";
    if (res===null) {
    	alert("Permission not found");
    } else {
		permission = res[1].trim();
    }
	regexp = /andere Versionen *[:']+ *(.+) */i;
	res = regexp.exec(article);
    var otherVersions = "";
    if (res===null) {
    	alert("Other versions not found");
    } else {
		otherVersions = res[1].trim();
    }
	var text = "== {{int:filedesc}} ==\n{{Information\n|description={{de|1=" + description + "}}\n|date=" + dateStr + "\n|source=" + source + "\n|author=" + author + "\n|permission=" + permission + "\n|other versions=" + otherVersions + "\n}}\n\n";
    var startPos = article.indexOf(" -\n");
	article = text + article.substring(startPos+4);
	article = article.replace("\n[[Category:Media missing infobox template]]", "");
	
    document.getElementById("wpSummary").value = "Information template added";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
	
}

function bilderFix()
{
    var article = document.editform.wpTextbox1.value;
    if (article.indexOf("{{Information")!=-1) {
    	return;
    }

    article = article.replace(/<br.*?>/g, "\n");
    //var regexp = /EN *[=:']+ *(.+) */;
    var regexp = /en\|1= *(.+) *\}\}/;
	var res = regexp.exec(article);
    if (!res || res===null) {
    	alert("En description not found");
    	return;
    }
	var descriptionEn = "{{en|1=" + res[1].trim() + "}}";
	
	article = article.replace(/<br.*?>/g, "\n");
    //regexp = /DE *[=:']+ *(.+) */;
    regexp = /de\|1= *(.+) *\}\}/;
	res = regexp.exec(article);
    if (res===null) {
    	alert("De description not found");
    }
	var descriptionDe = "{{de|1=" + res[1].trim() + "}}";
	
	var description = descriptionEn  + "\n" + descriptionDe;

	//regexp = /Source *[:']+ *(.+) */i;
	/*res = regexp.exec(article);
    if (res===null) {
    	alert("Source not found");
    }
	var source = res[1].trim();
	if ((source=="own") || (source=="own work") || (source=="self") || (source=="self-made")) {
		source = "{{own}}";
	} else if (source=="own photography") {
		source = "{{own photo}}";
	}*/
	var source= "{{own}}";

	//regexp = /Datum-DE *[=:']+ *(.+) */i;
	regexp = /([0-9]{4})-([a-zA-Z]+\.*)-([0-9]{1,2})/;
	res = regexp.exec(article);
    if (res===null) {
    	alert("Date not found");
    }
	//var dateStr = convertDate(res[1].trim());
	var dateStr = convertDate(res[3] + " " + res[2] + " " + res[1]);

	//regexp = /Author *[:']+ *(.+) */i;
	/*res = regexp.exec(article);
    if (res===null) {
    	alert("Author not found");
    }
	var author = res[1].trim();
	if (author.startsWith("--")) {
		author = author.substring(2);
	}
	author = author.replace(/[0-9]{1,2}:[0-9]{1,2}, [0-9]{1,2} [a-z]+ [0-9]{4} \(UTC\)/i, "")*/
	var author = "[[User:LSDSL|LSDSL]]";

    //regexp = /permission *[:']+ *(.+) */i;
	/*res = regexp.exec(article);
    var permission = "";
    if (res===null) {
    	alert("permission not found");
    } else {
		permission = res[1].trim();
    }*/
    var permission = "";

	//regexp = /Other.versions *[:']+ *(.+) */i;
	/*res = regexp.exec(article);
    var otherVersions = "";
    if (res===null) {
    	alert("Other versions not found");
    } else {
		otherVersions = res[1].trim();
    }
    if (otherVersions=="none") {
		otherVersions = "";
	}*/
    var otherVersions = "";

	var text = "== {{int:filedesc}} ==\n{{Information\n|description=" + description + "\n|date=" + dateStr + "\n|source=" + source + "\n|author=" + author + "\n|permission=" + permission + "\n|other versions=" + otherVersions + "\n}}\n\n== {{int:license-header}} ==\n";
    var startPos = article.indexOf(" -\n");
	article = text + article.substring(startPos+4);
	article = article.replace("\n[[Category:Media missing infobox template]]", "");
	
    document.getElementById("wpSummary").value = "Information template added";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
    document.getElementById("wpMinoredit").checked = false;
	
}

function cleanArticle2() {
	var article = document.editform.wpTextbox1.value;
    var description = prompt("Beschreibung: ", "");
    article = article.replace(/== {{int:filedesc}} ==/, "== {{int:filedesc}} ==\n{{Information\n|description={{de|1=" + description + "}}\n|date=\n|source={{own}}\n|author=[[User:Elop|Elop]]\n|permission=\n|other versions=\n}}");
    article = article.replace(/\[\[Category:Media missing infobox template\]\]/, "");

    //moving categories to the end
    var startPos;
    var firstTime = true;
    do {
    	var licensePos = article.indexOf("{{int:license");
    	startPos = article.indexOf("[[Category:");
    	if ( (startPos==-1) || (licensePos==-1) || (startPos>licensePos) )  {
    		break;
    	}
    	var endPos = article.indexOf("]]", startPos + 11);
    	var categoryString = article.substring(startPos, endPos+3);
    	article = article.replace(categoryString, "");
    	if (firstTime) {
    		article += "\n\n";	
    		firstTime = false;
    	}
    	article += categoryString;
    	
    } while (startPos>0);
    if (!firstTime) {
       article = article.replace(/\n\n/g, '\n');
    }
    
    document.getElementById("wpSummary").value = "information template added";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
}

function cl2() {
	var article = document.editform.wpTextbox1.value;

    article = article.replace(/\]\] *\[\[/g, "]]\n[[");
    article = article.replace(/\]\] *\{\{/g, "]]\n{{");
    article = article.replace(/\]\] *<\!\-\-/g, "]]\n<!--");

    article = article.replace(/\}\} *\[\[/g, "}}\n[[");
    article = article.replace(/\}\} *\{\{/g, "}}\n{{");
    article = article.replace(/\}\} *<\!\-\-/g, "}}\n<!--");

    article = article.replace(/\-\-\> *\[\[/g, "-->\n[[");
    article = article.replace(/\-\-\> *\{\{/g, "-->\n{{");
    article = article.replace(/\-\-\> *<\!\-\-/g, "-->\n<!--");
    document.getElementById("wpSummary").value = "cleanup";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpMinoredit").checked = true;

}

function cl() {
	var article = document.editform.wpTextbox1.value;

//    article = article.replace(/<br.*?>/g, "\n");
//    article = "\n" + article;
    article = article.replace(/\(HR\)/, "(hr)");
    article = article.replace(/\(PL\)/, "(pl)");
    article = article.replace(/\(SK\)/, "(sk)");

    article = article.replace(/<br.*?> *([a-zA-Z][a-zA-Z] *:)/g, "\n$1");
    article = article.replace(/[\* ]*''' *([a-zA-Z][a-zA-Z]) *: *''' *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/[\* ]*''' *([a-zA-Z][a-zA-Z]) *''' *: *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/[\* ]*'' *([a-zA-Z][a-zA-Z]) *: *'' *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/[\* ]*'' *([a-zA-Z][a-zA-Z]) *'' *: *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/[\* ]* *([\n =])([a-zA-Z][a-zA-Z]) *: *(.*) */g, "$1{{$2|1=$3}}");
    article = article.replace(/ *\* *([a-zA-Z][a-zA-Z]) *: *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/\[ *([a-zA-Z][a-zA-Z]) *\] *(.*) */g, "{{$1|1=$2}}");
    article = article.replace(/\( *([a-zA-Z][a-zA-Z]) *\) *(.*) */, "{{$1|1=$2}}");
    article = article.replace(/:/ig, ":");
    
    
    article = article.replace(/&#x7C;/g, "|");
    article = article.replace(/&#x7D;/g, "}");
    article = article.replace(/&#x7B;/g, "{");
    article = article.replace(/^{Information/i, "{{Information");

    var repls = {};
    repls.English = 'en';
    repls.Deutsch = 'de';
    repls.German = 'de';
    repls.Français = 'fr';
    repls.French = 'fr';
    repls.Greek = 'el';
    repls.Svenska = 'sv';
    repls.Swedish = 'sv';
    repls.Русский = 'ru';
    repls.Russian = 'ru';
    repls.Polski = 'pl';
    repls.Polish = 'pl';
    repls.Italiano = 'it';
    repls.Italian = 'it';
    repls.Português = 'pt';
    repls.Portuguese = 'pt';
    repls.Español = 'es';
    repls.Spanish = 'es';
    repls.Serbian = 'sr';
    repls.Nederlands = 'nl';
    repls.Dutch = 'nl';
    repls.Česky = 'cs';
    repls.Czech = 'cs';
    repls.Čeština = 'cs';
    repls.Dansk = 'da';
    repls.Danish = 'da';
    repls.Català = 'ca';
    repls.日本語 = 'ja';	
    repls.Japanese = 'ja';
    repls.Ελληνικά = 'gr';
    repls.Български = 'bg';
    repls.Suomi = 'fi';
    repls.Українська = 'uk';
    repls.Magyar = 'hu';
    repls.Hungarian = 'hu';
    repls.Galego = 'gl';
    repls.Frysk = 'fy';
    repls.Türkçe = 'tr';
    repls.Turkish = 'tr';
    repls.Esperanto = 'eo';
    repls.中文 = 'zh';
    repls.Thai = 'th';
    repls.Cymraeg = 'cy';
    repls.한국어 = 'ko';
    repls.Македонски = 'mk';
    repls.Shqip = 'sq';
    repls.Română = 'ro';
    repls.Hrvatski = 'hr';
    repls.Hebrew = 'he';
    repls.עברית = 'he';
    repls.Slovenčina = 'sk';
    repls.Norsk = 'no';
    repls.বাংলা = 'bn';
    repls.ଓଡ଼ିଆ = 'or';
    repls.ไทย = 'th';
    
    for (var repl in repls) {
    	var val = repls[repl];
    	var myRegExp = new RegExp("(''' *" + repl + "''')<br.*?>", 'ig');
        article = article.replace(myRegExp, "$1:");
    }
    var myRegExp = new RegExp("<br.*?>", 'ig');
    //article = article.replace(myRegExp, "\n");
    
    for (var repl in repls) {
    	var val = repls[repl];
        var myRegExp = new RegExp("[\*: ]*''' *" + repl + " *: *''' *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
        myRegExp = new RegExp("[\*: ]*''' *" + repl + " *: *''' *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
        myRegExp = new RegExp("[\*: ]*'' *" + repl + " *: *'' *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
        myRegExp = new RegExp("[\*: ]*''' *" + repl + " *''' *[\-:] *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
        myRegExp = new RegExp("[\*: ]*'' *" + repl + " *'' *: *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
        myRegExp = new RegExp("[\*: ]* *" + repl + " *: *(.*) *", 'ig');
        article = article.replace(myRegExp, "{{" + val + "|1=$1}}");
    }

    article = article.replace("}}", "}}");
    article = article.replace("}}", "}}");
    article = article.replace("}}", "}}");
    article = article.replace("}}", "}}");
    article = article.replace("}}", "}}");
    article = article.replace("}}", "}}");
    article = article.replace("{{en|", "{{en|");
    article = article.replace("{{de|", "{{de|");
    article = article.replace("{{pl|", "{{pl|");
    
	article = article.replace(/\[\[ *category *: *(\[\[ *category *:.*\]\])\]\]/ig, "$1");
    article = article.replace(/\[\[ *category *: *(\[\[ *category *:)/ig, "$1");
    
    //var description = mw.config.get('wgTitle');
    //description = description.replace(/\.jpg/i, "");
    //article = article.replace(/(\| *description *=).*/i, "$1 " + description);

    article = article.replace(/ *<br *\/{0,1} *\> *\}\}/g, "}}");
    
    /*var regexp = /(\n *\| *date *= *)(.+) *\n/i;
	var res = regexp.exec(article);
	var dateStr = "";
    if (res===null) {
    	alert("Date not found");
    } else {
	   dateStr = convertDate(res[2].trim());
    }
    article = article.replace(res[0], res[1] + dateStr + "\n");*/
   
    document.getElementById("wpSummary").value = "cleanup";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
}

function cleanArticle() {
	var article = document.editform.wpTextbox1.value;

    var regexp = /Description''': *(.*)/i;
	var res = regexp.exec(article);
	var descr1 = "";
	if (res!==null) {
		descr1 = res[1];
	}
	regexp = /Descripción''': *(.*)/i;
	res = regexp.exec(article);
	var descr2 = "";
	if (res!==null) {
		descr2 = res[1];
	}
	regexp = /Deskribapena''': *(.*)/i;
	res = regexp.exec(article);
	var descr3 = "";
	if (res!==null) {
		descr3 = res[1];
	}
	regexp = /Date''': *(.*)/i;
	res = regexp.exec(article);
	var dateStr = "";
	if (res!==null) {
		dateStr = res[1];
	}
    var startPos = article.indexOf("== {{int:license-header}} ==");
    article = "== {{int:filedesc}} ==\n"
     + "{{Information\n"
     + "|description={{en|1=" + descr1 + "}}{{es|1=" + descr2 + "}}{{eu|1=" + descr3 + "}}\n"
     + "|date=" + dateStr + "\n"
     + "|source={{own}}\n"
     + "|author=[[User:Javierme|Javier Mediavilla Ezquibela]]\n"
     + "|permission=\n"
     + "|other versions=\n"
     + "}}\n\n"
     + article.substring(startPos);
   	
   	article = article.replace("\n[[Category:Media missing infobox template]]", "");
    document.getElementById("wpSummary").value = "cleanup";
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
}

/*function rename() {
  var article = document.editform.wpTextbox1.value;
  var oldName = mw.config.get('wgTitle');
  var newName = oldName.replace(/pic/, "b").replace(/JPG/, "jpg");
  var renamingRequest = "{{rename|1=" + newName + "|2=6|3=correcting naming according to https://de.wikisource.org/wiki/Die_Gartenlaube#Bilder|user=Aschroet}}";
  document.editform.wpTextbox1.value = article.replace(/\[\[Category/, renamingRequest + "\n\n[[Category");
  document.getElementById("wpWatchthis").checked = true;
  
  var summary = "Requesting renaming this file to " + newName + "; Reason: correcting naming according to https://de.wikisource.org/wiki/Die_Gartenlaube#Bilder; Criterion 6)";
  document.getElementById("wpSummary").value = summary;
}*/

function preCleanup() {
	var article = document.editform.wpTextbox1.value;
	var pos1 = article.indexOf("{{int:filedesc}}");
	var artName = mw.config.get('wgTitle');
	var pos2 = artName.toLowerCase().indexOf("jpg");
	if (pos1==-1 && pos2>0)  {
		article = "== {{int:filedesc}} ==\n" + article;
	}
	/*var regexp = /\[\[ *category *: *(.+) *\]\]\n/i;
	var res = regexp.exec(article);
	var cats = "";
	while (res!==null) {
		cat = res[1];
		article = article.replace(/\[\[ *category *: *(.+) *\]\]\n/i, "");
		cats += "\n[[Category:" + cat + "]]";
		res = regexp.exec(article);
	}*/
	article = article.replace(/\n{3,}/g, "\n\n");
	article = article.replace(/\[\[:([a-z][a-z]:)\]\]/g, "$1");
    document.editform.wpTextbox1.value = article;
}

function addWikidata() {
  var wikidataid = prompt('What is the wikidata id (Q included)?');
  if (wikidataid) {

  const wiki = CeL.wiki.mw_web_session;
  wiki
    .page(mw.config.get('wgPageName'))
    .edit(function(page_data) {
  	    const parsed = CeL.wiki.parser(page_data).parse();
    	parsed.each('Template:Artwork', function(token) {
		token.push('wikidata='  + wikidataid);
	  });
	  return parsed.toString();
    })
    .run(function() {
	  location.reload();
     });
  }

}

function transcribe2() {

  var article = document.editform.wpTextbox1.value;
  var pos1 = article.indexOf("{{Transcribe here}}"); 
  var pos2 = article.indexOf("{{inscription");
  if ( (pos1==-1) && (pos2==-1) ) {
		//document.editform.wpTextbox1.value = article + "[[Category:Needing transcription]]";
        document.editform.wpTextbox1.value = article.replace(/\[\[Category/, "{{Transcribe here|de}}\n[[Category");

        document.getElementById("wpSummary").value = "{{Transcribe here}}";
  }
  document.getElementById("wpWatchthis").checked = true;
}

function transcribed() {

  var article = document.editform.wpTextbox1.value;
  article = article.replace(/\=\n}}/, "=\n|other fields 1 ={{information field|name={{i18n|inscription}}|value ={{inscription|1=<big>xxx</big>|language=de}}}}\n}}");
  article = article.replace(/{{Transcribe here.*}}\n/i, "");
  article = article.replace(/\[\[Category:Needing transcription.*\]\]\n/i, "");
  document.editform.wpTextbox1.value = article;
  pos = document.editform.wpTextbox1.value.indexOf("xxx");
  textSelect(document.editform.wpTextbox1, pos, pos+3);
  document.getElementById("wpWatchthis").checked = true;
  document.getElementById("wpSummary").value = "transcribed the text";
}

function br() {
  var article = document.editform.wpTextbox1.value;
  var textarea = document.querySelector("textarea").value; 
  var startPos = document.editform.wpTextbox1.selectionStart;

  var beforeStr = article.substring(0, startPos);
  var afterStr = article.substring(startPos);

  document.editform.wpTextbox1.value = beforeStr + "<br />" + afterStr;
  textSelect(document.editform.wpTextbox1, startPos+6, startPos+6);
}

function info() {
  var article = document.editform.wpTextbox1.value;
  var textarea = document.querySelector("textarea").value; 
  var startPos = document.editform.wpTextbox1.selectionStart;

  var beforeStr = article.substring(0, startPos);
  var afterStr = article.substring(startPos);

  document.editform.wpTextbox1.value = beforeStr + "{{Information\n|Description={{en|1=" + afterStr;
  textSelect(document.editform.wpTextbox1, startPos+6, startPos+6);
}

function ws() {
   	var article = document.editform.wpTextbox1.value;
	var regexp1 = /other_versions *=(.+)/;
	var res1 = regexp1.exec(article);
	article = article.replace(res1[1], "");
	var regexp2 = /Description *=(.+)/;
	var res2 = regexp2.exec(article);
    article = article.replace(res2[1], "{{de|1=" + res1[1] + "}}"+res2[1]);
    var pos = res2[1].indexOf("{{en"); 
    if (pos==-1) {
        article = article.replace(res2[1], "{{en|1=" + res2[1] + "}}");	
    }
    
  	var regexp3 = /Date *=(.+)/;
	var res3 = regexp3.exec(article);
	var dateStrOld = res3[1];
	var dateStr = dateStrOld.replace(/ /g, "-");
    article = article.replace(dateStrOld, dateStr);

    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
    document.getElementById("wpSummary").value = "move description to the right place";
}

function addInscription() {
   	var article = document.editform.wpTextbox1.value;
    var language = prompt("Sprache: ", "");
    article = article.replace(/(ImageNote.*?}}\n)([\s\S]*?)(\n{{ImageNoteEnd)/ig, "$1{{inscription|1=$2|language=" + language + "}}$3"); 
    document.editform.wpTextbox1.value = article;
    document.getElementById("wpWatchthis").checked = true;
    document.getElementById("wpSummary").value = "add inscription template";

}

function unfold() {
   var article = document.editform.wpTextbox1.value;
   article = article.replace(/ *{{Information[\s\|]+Description *=(.*)[\s\|]+Source *=(.*)[\s\|]+Author *=(.*)[\s\|]+Date *=(.*)[\s\|]+Permission *=(.*)[\s\|]+other.versions *=(.*?)[\s]*}}/i, "\n{{Information\n|description=$1\n|source=$2\n|author=$3\n|date=$4\n|permission=$5\n|other versions=$6\n}}\n");
   article = article.replace(/ *{{Information[\s\|]+Description *=(.*)[\s\|]+source *=(.*)[\s\|]+date *=(.*)[\s\|]+author *=(.*)[\s\|]+Permission *=(.*)[\s\|]+other.versions *=(.*?)[\s]*}}/i, "\n{{Information\n|description=$1\n|source=$2\n|date=$3\n|author=$4\n|permission=$5\n|other versions=$6\n}}\n");
   article = article.replace(/ *== *Licensing *== */i, "== {{int:license-header}} ==\n");
   document.editform.wpTextbox1.value = article;
   document.getElementById("wpSummary").value = "cleanup";
   
}

function clean3() {
   var article = document.editform.wpTextbox1.value;
   article = article.replace(/[:\* ]*{{([a-zA-Z][a-z]) icon}} *(.*) *<br[ \/]*>/g, "{{$1|1=$2}}");
   article = article.replace(/[:\* ]*{{([a-zA-Z][a-z]) icon}} *(.*) */g, "{{$1|1=$2}}");
   document.editform.wpTextbox1.value = article;
   document.getElementById("wpSummary").value = "use language templates";
}

function myPrompt(label) {
  var text = prompt(label, "");
  if (text===null) {
    text = "";
  }
  return text;
}

function personendaten() {
   var commonscat = "";
   var personendaten = myPrompt("Personendaten:");
   var regexp = /NAME *= *(.*?) *\|/i;
   var res = regexp.exec(personendaten);
   var name = "";
   if (res!==null) {
     name = res[1];
     var tokens = name.split(",");
     name = tokens[1] + " " + tokens[0];
     name = name.trim();
     var nameSort = res[1].replace("ä", "a").replace("ö", "o").replace("ü", "u").replace("ß", "s");
     commonscat += "{{DEFAULTSORT:" + nameSort + "}}\n";
   } else {
   	 alert("Keine Personendaten!");
   	 return;
   }
   regexp = /GEBURTSDATUM *=.*?([0-9]{4})/i;
   res = regexp.exec(personendaten);
   if (res!==null) {
     commonscat += "[[Category:" + res[1] + " births]]\n";
   }
   regexp = /STERBEDATUM *=.*?([0-9]{4})/i;
   res = regexp.exec(personendaten);
   if (res!==null) {
     commonscat += "[[Category:" + res[1] + " deaths]]\n";
   }
   var article = document.editform.wpTextbox1.value;
   var startPos = document.editform.wpTextbox1.selectionStart;
   var endPos = document.editform.wpTextbox1.selectionEnd;
   var beforeStr = article.substring(0, startPos);
   var selection = article.substring(startPos, endPos);
   var afterStr = article.substring(endPos);
   commonscat += "{{Wikidata Infobox}}\n" + selection + "\n\nhttps://commons.wikimedia.org/w/index.php?action=edit&title=Category:" + encodeURI(name);
   alert(commonscat);
   document.editform.wpTextbox1.value = beforeStr + "[[Category:" + name + "]]" + afterStr;
}

function addWDIB() {
	var article = document.editform.wpTextbox1.value;
	document.editform.wpTextbox1.value = "{{Wikidata Infobox}}\n" + article;
	document.getElementById("wpSummary").value = "{{Wikidata Infobox}} added";
	document.getElementById("wpWatchthis").checked = true;
}

function getWikitext(api, pageTitle) {
		return api.get( {
			format: 'json',
			action: 'query',
			titles: pageTitle,
			prop: 'revisions',
			rvprop: 'content|timestamp',
			indexpageids: true
		} ).then( function ( data ) {
			var revision, timestamp,
				q = data.query,
				pages = q.pages,
				pageids = q.pageids,
				page = pages[pageids[0]];

			$.each( page.revisions, function ( i, rev ) {
				content = rev['*'];
				timestamp = rev.timestamp;
				return false;
			} );

			return $.Deferred().resolve( content, timestamp );
		} );
	}
	
function updateWikitext(api, pageTitle, content, summary, createonly) {

		return api.postWithToken( 'edit', {
			format: 'json',
			action: 'edit',
			title: pageTitle,
			summary: summary,
			text: content,
			createonly: createonly
		} );
	}
	
	
function getWikiCoord(api, pageTitle) {
	api.get( {
		format: 'json',
		action: 'query',
		prop: 'coordinates',
		titles: pageTitle
	} ).then( function ( data ) {
		var retVal = '';
		$.each( data.query.pages, function ( i, rev ) {
			retVal = pageTitle + ': ' + rev.coordinates[0].lat + ',' + rev.coordinates[0].lon;
			console.log(retVal);
			return false;
		} );
		return $.Deferred().resolve(retVal);
	} ).done( function ( res ) {
			return res;
		} );
}	

function getHistory() {
	var name = mw.config.get("wgPageName");
	var api = new mw.Api();
	
	api.get( {
			action: 'query',
    		titles: name,
            prop: 'revisions',
    		rvlimit: 3,
    		rvprop: 'timestamp|user|comment',
    		format: 'json'
		} ).then( function ( data ) {
			$.each( data.query.categorymembers, function ( i, member ) {
				getWikiCoord(api, member.title);
			} );
			return "erldigt";
		} ).done( function ( res ) {
				alert(res);
			} );
}
	
function cleanCat() {
	var fullCategoryName = mw.config.get("wgPageName");
	var api = new mw.Api();
	
	api.get( {
			action: 'query',
    		cmtitle: fullCategoryName,
            cmtype: 'file',
    		cmlimit: 500,
    		list: 'categorymembers',
    		format: 'json'
		} ).then( function ( data ) {
			$.each( data.query.categorymembers, function ( i, member ) {
				getWikiCoord(api, member.title);
			} );
			return "erldigt";
		} ).done( function ( res ) {
				alert(res);
			} );
}

function createCat() {
	var fullFileName = mw.config.get("wgPageName");
	var api = new mw.Api();
	getWikitext(api, fullFileName).done( function ( articleOrig, timestamp ) {
		var article =  articleOrig + "\n";
		var catName = prompt("Name der Kategorie: ", mw.config.get("wgTitle").replace(/\.[a-zA-Z]+$/, "")).trim();
		var catText = "{{Wikidata Infobox}}\n";
		var regexp1 = /\{\{DEFAULTSORT *:.*\}\} */g;
		match = regexp1.exec(articleOrig);
		if (match) {
			if (confirm(match + " übernehmen?")) {
				article = article.replace(match + "\n", "");
				catText += match + "\n";
			}
		}
		var regexp2 = /\[\[ *[cC]ategory *:.*\]\] */g;
		while ((match = regexp2.exec(articleOrig)) !== null) {
			var regexp3 = /[0-9]{4} +(births|deaths)/;
			if (regexp3.exec(match)) {
				article = article.replace(match + "\n", "");
			} else {
				if (confirm(match + " übernehmen?")) {
					article = article.replace(match + "\n", "");
					catText += match + "\n";
				}
			}
		}
		if (confirm("Kategorie " + catName + " mit: \n" + catText + " anlegen?")) {
			var fullCatName = "Category:" + catName;
			var summary = "new category [[:" + fullCatName + "]] created";
			var newArticle = article + "[[" + fullCatName + "]]\n";
			updateWikitext(api, fullFileName, newArticle, summary, false);
			updateWikitext(api, fullCatName, catText, summary, true);
			api.watch(fullFileName);
			
		}
	} );
}

function reloadPage () {
	location.reload();
}

function startUp() {

	preCleanup();
	
    var artName = mw.config.get("wgTitle");
    var ns = mw.config.get( 'wgNamespaceNumber' );
    if (ns==14) {
		/*var article = document.editform.wpTextbox1.value;
		alert(mw.config.get('wgWikibaseItemId'));
    	if (article.includes("{{Wikidata Infobox}}")) {
    		alert("OK");   	
    	}*/
    }

   //bilderFix();

   
/*   article = article.replace(/(\| *(description|date|author|source|permission|other.versions) *=)/ig, "\n$1");
   article = article.replace(/(\| *other.versions *=) *\}\}/i, "$1\n}}");
   document.editform.wpTextbox1.value = article;*/

   /*var article = document.editform.wpTextbox1.value;
   article = article.replace(/(\| *(description|date|author|source|permission|other.versions) *=)/ig, "\n$1");
   article = article.replace(/(\| *other.versions *=) *\}\}/i, "$1\n}}");
   document.editform.wpTextbox1.value = article;
   document.getElementById("wpSummary").value = "unfold information template";*/

   /*var article = document.editform.wpTextbox1.value;
   article = article.replace(/ *<br *\/{0,1}> *\}\}/ig, "}}");
   document.editform.wpTextbox1.value = article;
   document.getElementById("wpMinoredit").checked = true;*/
   
   if (typeof $.fn.wikiEditor != 'undefined') {
    // Execute on load
    $( function() {
    	 $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'CL',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
              		cl();
              }
            }
          }
        }
      } );

       $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'TS',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                 transcribe2();
              }
            }
          }
        }
      } );

      $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'TSD',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                 transcribed();
              }
            }
          }
        }
      } );
      
       $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'BR',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                 personendaten();
              }
            }
          }
        }
      } );

       $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'DA',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                 alert(getDate());
              }
            }
          }
        }
      } );
      
      
          $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'I',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                this.addTask( 'reloadPage' );
				this.nextTask();
   				this.showProgress();
              }
            }
          }
        }
      } );
      
      
              $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
        'section': 'main',
        'group': 'insert',
        'tools': {
          'pretext': {
            label: 'WD',
            type: 'button',
            icon: 'LINK.png',
            action: {
              type: 'callback',
              execute: function() {
                 addWDIB();
              }
            }
          }
        }
      } );
      
      
      
      
			

    } );
    
  }
}

$.when( mw.loader.using( [ 'mediawiki.util' ] ), $.ready ).then( function () {
	if (mw.config.get('wgNamespaceNumber') == 6) {
    	$(mw.util.addPortletLink(
        	'p-cactions',
        	'#',
        	'Create category',
        	'ca-merge',
        	'Create category'
    	)).click(function (event) {
        	event.preventDefault();
        	createCat();
    	});
    	$(mw.util.addPortletLink(
        	'p-cactions',
        	'#',
        	'Get history',
        	'ca-history',
        	'Get history'
    	)).click(function (event) {
        	event.preventDefault();
        	getHistory();
    	});
	}
	if (mw.config.get('wgNamespaceNumber') == 14) {
    	$(mw.util.addPortletLink(
        	'p-cactions',
        	'#',
        	'Clean category',
        	'ca-clean',
        	'Clean category'
    	)).click(function (event) {
        	event.preventDefault();
        	cl();
    	});
	}
} );

$( '#wpTextbox1' ).on( 'wikiEditor-toolbar-doneInitialSections', function () {
    startUp();
} );

//getTest();
	
	
// </nowiki>
	
//<nowiki>
	
	
//vFCProfil/////////////////////////////////////
	
/////// VISUAL FILE CHANGE CONFIGURATION ///////
	
///// DO NOT MODIFY BY HAND - FINGERS AWAY! ////
	
////////////////////////////////////////////////
	
window.vFC_Profiles = {"Cc-zero für alle eigenen Bilder":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"","mdReplacePermission":false,"mdDeleteHeading":"Files uploaded by [[User:Aschroet|Aschroet]] ([[User talk:Aschroet|talk]] · [[Special:Contributions/Aschroet|contribs]])","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"{{self|cc-by-sa-4.0}}","mdReplaceText1":"{{Cc-zero}}\n{{self|cc-by-sa-4.0}}","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"{{self|cc-by-sa-3.0}}","mdReplaceText2":"{{Cc-zero}}\n{{self|cc-by-sa-3.0}}","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"","mdReplaceText3":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Aschroet","ledir":"older","lecontinue":"20120207185047|35094272"},"startInput":{"mode":"User","modeCat":false,"modeUser":true,"modePage":false,"target":"User:Aschroet","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["20120604125324|39630733","20120207185047|35094272"],"setVals":["lecontinue"]},"time":"2014-12-14T12:03:20.585Z"},"closing braches for language templates":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"add missing closing braces of languages templates","mdReplacePermission":false,"mdDeleteHeading":"Files in [[:Category:Pages using Information template with parsing errors]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"[[Category:Pages using Information template with parsing errors]]","mdReplaceText1":"","mdRRegEx2":true,"mdRVar2":true,"mdMatchText2":"/(\\{\\{[a-zA-Z][a-zA-Z]\\|[^}]+?)\\n\\|/g","mdReplaceText2":"$1}}\n|","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"[[Category:Pages using Information template with parsing errors‎]]","mdReplaceText3":"","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Category:Pages using Information template with parsing errors","cmdir":"asc","cmsort":"sortkey","cmstartsortkey":"","cmcontinue":"file|574f4d414e204641434553204445504f52544154494f4e2044554520544f204c41434b204f4620434954495a454e534849502e4f4747|3512876"},"startInput":{"mode":"Category","modeCat":true,"modeUser":false,"modePage":false,"target":"Category:Pages using Information template with parsing errors","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["file|554c524943482049492e204f462043494c4c492e4a5047|10878852","file|574f4d414e204641434553204445504f52544154494f4e2044554520544f204c41434b204f4620434954495a454e534849502e4f4747|3512876"],"setVals":["cmcontinue"]},"time":"2015-02-13T12:37:44.943Z"},"closing brace for language templates":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"add missing closing brace of languages templates","mdReplacePermission":false,"mdDeleteHeading":"Files in [[:Category:Pages using Information template with parsing errors]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"[[Category:Pages using Information template with parsing errors]]","mdReplaceText1":"","mdRRegEx2":true,"mdRVar2":true,"mdMatchText2":"/(\\{\\{[a-zA-Z][a-zA-Z]\\|[^}]+?\\})\\n\\|/g","mdReplaceText2":"$1}\n|","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"[[Category:Pages using Information template with parsing errors‎]]","mdReplaceText3":"","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Category:Pages using Information template with parsing errors","cmdir":"asc","cmsort":"sortkey","cmstartsortkey":"","cmcontinue":"file|57494b4950454449412041525449434c452d4352454154494f4e2d322d43412e535647|14671957"},"startInput":{"mode":"Category","modeCat":true,"modeUser":false,"modePage":false,"target":"Category:Pages using Information template with parsing errors","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["file|545241564953204d415353454e425552472e4a5047|16482148","file|57494b4950454449412041525449434c452d4352454154494f4e2d322d43412e535647|14671957"],"setVals":["cmcontinue"]},"time":"2015-02-13T14:15:02.722Z"},"add missing description parameter":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"","mdReplacePermission":false,"mdDeleteHeading":"Files in [[:Category:Pages using Information template with parsing errors]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"nformation\n","mdReplaceText1":"nformation\n|description=","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"[[Category:Pages using Information template with parsing errors]]","mdReplaceText2":"","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"","mdReplaceText3":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Category:Pages using Information template with parsing errors","cmdir":"asc","cmsort":"sortkey","cmstartsortkey":"","cmcontinue":"file|e0aeaae0af81e0aea4e0aeb0e0af8d20e0ae85e0aeb5e0aeb0e0af88342e4a5047|29662647"},"startInput":{"mode":"Category","modeCat":true,"modeUser":false,"modePage":false,"target":"Category:Pages using Information template with parsing errors","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["file|564d2047414c45524945203420524f44494e4e452056494c592e4a5047|10717975","file|e0aeaae0af81e0aea4e0aeb0e0af8d20e0ae85e0aeb5e0aeb0e0af88342e4a5047|29662647"],"setVals":["cmcontinue"]},"time":"2015-02-26T06:33:07.097Z"},"miniatur":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"","mdReplacePermission":false,"mdDeleteHeading":"Files in [[:Category:Crosses in Sainte-Croix-aux-Mines]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/\\[\\[:Image:.*\\|.*\\|.*\\|200px\\|(.*)]] *\\n\\|Description.*/g","mdReplaceText1":"== {{int:filedesc}} ==\n{{Information\n|Description={{fr|1=$1}}","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":" See beelow","mdReplaceText2":"","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"Oeuvre personnelle - Copyleft sous licence GFDL","mdReplaceText3":"{{own}}","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"10-04-2004","mdReplaceText4":"2004-04-10","mdRRegEx5":false,"mdRVar5":true,"mdMatchText5":"[[Category:Pages using Information template with parsing errors]]","mdReplaceText5":"","mdRRegEx6":false,"mdRVar6":true,"mdMatchText6":"","mdReplaceText6":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Category:Crosses in Sainte-Croix-aux-Mines","cmdir":"asc","cmsort":"sortkey","cmstartsortkey":""},"startInput":{"mode":"Category","modeCat":true,"modeUser":false,"modePage":false,"target":"Category:Crosses in Sainte-Croix-aux-Mines","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["cmcontinue"]},"time":"2015-03-11T12:38:48.135Z"},"created":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"remove the \"created\"","mdReplacePermission":false,"mdDeleteHeading":"Files on [[User:Aschroet/Bla]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\| *date *=) *created/i","mdReplaceText1":"$1","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"","mdReplaceText2":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"User:Aschroet/Bla","imdir":"ascending","imcontinue":"38901148|Sacro_Monte_di_Crea._L'incoronazione_di_Maria.JPG"},"startInput":{"mode":"Page","modeCat":false,"modeUser":false,"modePage":true,"target":"Page:User:Aschroet/Bla","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["38901148|Sacro_Monte_di_Crea._L'incoronazione_di_Maria.JPG"],"setVals":["imcontinue"]},"time":"2015-03-31T22:26:42.856Z"},"date-schnapszahl":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"","mdReplacePermission":false,"mdDeleteHeading":"Files on [[User:Aschroet/Bla]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\| *date *= *)1\\. *1\\. *([0-9]{4})/i","mdReplaceText1":"$1$2-01-01","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"","mdReplaceText2":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"User:Aschroet/Bla","imdir":"ascending","imcontinue":"38901148|Praha,_Malá_Strana,_Novoroční_ohňostroj_2008_22.jpg"},"startInput":{"mode":"Page","modeCat":false,"modeUser":false,"modePage":true,"target":"Page:User:Aschroet/Bla","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":["38901148|Praha,_Malá_Strana,_Novoroční_ohňostroj_2008_22.jpg"],"setVals":["imcontinue"]},"time":"2015-04-10T17:10:51.991Z"},"date mit Montasnamen als wort":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup date","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\| *date *= *)([0-9]{1,2}) +серпня +([0-9]{4})[,гроку \\. ]*\\n/i","mdReplaceText1":"$1$3-08-$2\n","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"","mdReplaceText2":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"insource:/date *= [0-9]{1,2} +сер/i"},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"insource:/date *= [0-9]{1,2} +сер/i","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["sroffset"]},"time":"2018-01-11T14:56:51.992Z"},"date with dot":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup date","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\| *date *= *[0-9][0-9][0-9][0-9]) *\\. *([0-9]{1,2}) *\\. *([0-9]{1,2})[\\. ]*\\n/i","mdReplaceText1":"$1-$2-$3\n","mdRRegEx2":true,"mdRVar2":true,"mdMatchText2":"/(\\| *date *= *[0-9][0-9][0-9][0-9]) *\\. *([0-9]{1,2})[\\. ]*\\n/i","mdReplaceText2":"$1-$2\n","mdRRegEx3":true,"mdRVar3":true,"mdMatchText3":"/(\\| *date *= *[0-9][0-9][0-9][0-9])[\\. ]*\\n/i","mdReplaceText3":"$1\n","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"insource:/\\| *date *= *2[0-9][0-9][0-9]\\./i -insource:/nowiki/","sroffset":100},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"insource:/\\| *date *= *2[0-9][0-9][0-9]\\./i -insource:/nowiki/","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[100],"setVals":["sroffset"]},"time":"2017-09-20T14:20:06.511Z"},"de":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup date","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\n *\\| *date *= *)([0-9]{1,2}) +de[l]{0,1} +Febrer +de[l]{0,1} +([0-9]{4})[\\. ]*\\n/i","mdReplaceText1":"$1$3-02-$2\n","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"","mdReplaceText2":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"insource:/date *= *[0-9]{1,2} +de +Febrer +de/i","sroffset":300},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"insource:/date *= *[0-9]{1,2} +de +Febrer +de/i","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[200,300],"setVals":["sroffset"]},"time":"2017-10-07T21:46:48.878Z"},"century":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup date","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/(\\n *\\| *date *= *)xx *siecle[\\. ]*\\n/i","mdReplaceText1":"$1{{other date|century|20}}\n","mdRRegEx2":true,"mdRVar2":true,"mdMatchText2":"/(\\n *\\| *date *= *)xx *secolo[\\. ]*\\n/i","mdReplaceText2":"$1{{other date|century|20}}\n","mdRRegEx3":true,"mdRVar3":true,"mdMatchText3":"/(\\n *\\| *date *= *)xx *siècle[\\. ]*\\n/i","mdReplaceText3":"$1{{other date|century|20}}\n","mdRRegEx4":true,"mdRVar4":true,"mdMatchText4":"/(\\n *\\| *date *= *)xx *sec[\\. ]*\\n/i","mdReplaceText4":"$1{{other date|century|20}}\n","mdRRegEx5":true,"mdRVar5":true,"mdMatchText5":"/(\\n *\\| *date *= *)xx *sc[\\. ]*\\n/i","mdReplaceText5":"$1{{other date|century|20}}\n","mdRRegEx6":false,"mdRVar6":true,"mdMatchText6":"","mdReplaceText6":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"insource:/date *= *XX[\\. ]*s/i"},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"insource:/date *= *XX[\\. ]*s/i","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["sroffset"]},"time":"2017-10-21T14:26:52.691Z"},"cleanup Category:Media missing infobox template":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"[[Category:Media missing infobox template]]\n","mdReplaceText1":"","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"\n[[Category:Media missing infobox template]]","mdReplaceText2":"","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"[[Category:Media missing infobox template]]","mdReplaceText3":"","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"incategory:Media_missing_infobox_template hastemplate:Infobox_template_tag","sroffset":100},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"incategory:Media_missing_infobox_template hastemplate:Infobox_template_tag","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[100],"setVals":["sroffset"]},"time":"2018-01-01T22:24:12.676Z"},"cleanup Category:Language templates with no text displayed":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup","mdReplacePermission":false,"mdDeleteHeading":"Files in [[:Category:Language templates with no text displayed]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":true,"mdRVar1":true,"mdMatchText1":"/\\{\\{[a-z][a-z] *\\|1= *\\}\\}/ig","mdReplaceText1":"","mdRRegEx2":true,"mdRVar2":true,"mdMatchText2":"/\\{\\{[a-z][a-z] *\\| *\\}\\}/ig","mdReplaceText2":"","mdRRegEx3":true,"mdRVar3":true,"mdMatchText3":"/\\{\\{[a-z][a-z] *\\|1= *\\n *\\}\\}/ig","mdReplaceText3":"","mdRRegEx4":true,"mdRVar4":true,"mdMatchText4":"/\\{\\{[a-z][a-z] *\\| *\\n *\\}\\}/ig","mdReplaceText4":"","mdRRegEx5":false,"mdRVar5":true,"mdMatchText5":"","mdReplaceText5":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"Category:Language templates with no text displayed","cmdir":"asc","cmsort":"sortkey","cmstartsortkey":""},"startInput":{"mode":"Category","modeCat":true,"modeUser":false,"modePage":false,"modeSearch":false,"target":"Category:Language templates with no text displayed","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["cmcontinue"]},"time":"2019-08-19T08:57:53.316Z"},"Cleanup Category:Pages using Information template with parsing errors":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"cleanup","mdReplacePermission":false,"mdDeleteHeading":"","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"[[Category:Pages using Information template with parsing errors]]\n","mdReplaceText1":"","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"\n[[Category:Pages using Information template with parsing errors]]","mdReplaceText2":"","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"[[Category:Pages using Information template with parsing errors]]","mdReplaceText3":"","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"incategory:Pages_using_Information_template_with_parsing_errors hastemplate:Information"},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"incategory:Pages_using_Information_template_with_parsing_errors hastemplate:Information","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["sroffset"]},"time":"2018-01-04T11:45:35.966Z"},"cleanup Artworks missing infobox template":{"editInputs":{"mdDeleteReason":"","mdEditSummary":"remove [[:Category:Artworks missing infobox template]]","mdReplacePermission":false,"mdDeleteHeading":"Files found with [[Special:Search/incategory:Artworks_missing_infobox_template hastemplate:Infobox_template_tag]] ","mdTalkNote":"Yours sincerely,","mdRRegEx1":false,"mdRVar1":true,"mdMatchText1":"[[Category:Artworks missing infobox template]]\n","mdReplaceText1":"","mdRRegEx2":false,"mdRVar2":true,"mdMatchText2":"\n[[Category:Artworks missing infobox template]]","mdReplaceText2":"","mdRRegEx3":false,"mdRVar3":true,"mdMatchText3":"[[Category:Artworks missing infobox template]]","mdReplaceText3":"","mdRRegEx4":false,"mdRVar4":true,"mdMatchText4":"","mdReplaceText4":"","selPreserve":"secure","alsoPreserve":""},"action":"c_replace","objectMembers":{"queryParams":{"target":"incategory:Artworks_missing_infobox_template hastemplate:Infobox_template_tag"},"startInput":{"mode":"Search","modeCat":false,"modeUser":false,"modePage":false,"modeSearch":true,"target":"incategory:Artworks_missing_infobox_template hastemplate:Infobox_template_tag","loadThumbs":true,"loadWikitext":true,"startDate":"","startFile":""}},"proceedAt":{"vals":[],"setVals":["sroffset"]},"time":"2018-10-14T18:57:17.996Z"}};
	
//////////////////////////////////vFCProfilEnd//
	
//</nowiki>
	
//<nowiki>
	
	
//vFCvFCCfg/////////////////////////////////////
	
/////// VISUAL FILE CHANGE CONFIGURATION ///////
	
///// DO NOT MODIFY BY HAND - FINGERS AWAY! ////
	
////////////////////////////////////////////////
	
window.vFCSettings = {"userNote":"Yours sincerely,","firstTest":0,"testEdits":0,"defaultAction":"del","watchlistUserTalk":"preferences","watchlistFiles":"preferences","watchlistReplace":"nochange","watchlistOTRS":"nochange","loadBatchSize":100,"maxSimultaneousReq":5,"summaryChacheLen":5,"loadThumbs":true,"loadWikitext":true};
	
//////////////////////////////////vFCvFCCfgEnd//
	
//</nowiki>