Ugrás a tartalomhoz

Szerkesztő:B.Zsolt/navbox.js

A Wikipédiából, a szabad enciklopédiából

Megjegyzés: közzététel után frissítened kell a böngésződ gyorsítótárát, hogy lásd a változásokat.

  • Firefox / Safari: tartsd lenyomva a Shift gombot és kattints a Frissítés gombra a címsorban, vagy használd a Ctrl–F5 vagy Ctrl–R (Macen ⌘–R) billentyűkombinációt
  • Google Chrome: használd a Ctrl–Shift–R (Macen ⌘–Shift–R) billentyűkombinációt
  • Internet Explorer / Edge: tartsd nyomva a Ctrl-t, és kattints a Frissítés gombra, vagy nyomj Ctrl–F5-öt
  • Opera: Nyomj Ctrl–F5-öt
(function() {
	"use strict";
	function unifyNavbox() {
		var result = $("#wpTextbox1").val();
		
		// {{·}}, {{•}}, {{,}} sablonok cseréje felsorolásra
		result = result.replaceAll(/[ \n]*\{\{(·|•|,)\}\}[ \n]*/g, "\n* ");
		
		// <br />, <br> cseréje felsorolásra
		result = result.replaceAll(/[ \n]*<br ?\/?>[ \n]*/g, "\n* ");
		
		// "|listaosztály = hlist" beszúrása az első csoport elé
		result = result.replaceAll(/[ \n]*(([ \n]*\|csoport1 *=[^\n]*)?(\n\|lista1 *=))/g, "\n|listaosztály = hlist\n$1");
		
		// "|listaN =" után sortörés
		result = result.replaceAll(/(lista[0-9]+[ \n]*=)[ \n]*/g, "$1\n* ");
		
		// minden csoportN előtt egy üres sor
		result = result.replaceAll(/\n(\|csoport[0-9]+[ \n]*=)/g, "\n\n$1");
		
		// "}}</includeonly>" előtt egy üres sor
		result = result.replaceAll(/[ \n]*(\}\}[ \n]*<\/includeonly>)/g, "\n\n}}</includeonly>");
		
		// </includeonly> és <noinclude> közötti szóköz, új sor törlése
		result = result.replaceAll(/<\/includeonly>[ \n]*<noinclude>/g, "</includeonly><noinclude>");
		
		// kategóriák külön sorba
		result = result.replaceAll(/[ \n]*(\[\[[Kk]ategória:[^\]]+\]\])/g, "\n$1");
		result = result.replaceAll(/(\[\[[Kk]ategória:[^\]]+\]\])[ \n]*/g, "$1\n");
		
		// {{Navboxdoc}} -> {{Navbox sablondokumentációja}}
		result = result.replaceAll(/\{\{[Nn]avboxdoc[ \n]*(\||\}\})/g, "{{Navbox sablondokumentációja$1");
		
		// {{Navbox sablondokumentációja}} külön sorba
		result = result.replaceAll(/[ \n]*(\{\{[Nn]avbox sablondokumentációja\}\})[ \n]*/g, "\n{{Navbox sablondokumentációja}}\n");
		result = result.replaceAll(/[ \n]*(\{\{Navbox sablondokumentációja)/g, "\n{{Navbox sablondokumentációja");
		
		// "|alul =" előtt üres sor
		result = result.replaceAll(/[ \n]*(\|alul *=)/g, "\n\n$1");
		
		$("#wpTextbox1").val(result);
	}
	
	var $menu = $("<div>")
		.attr("style", "border: 1px solid #808080; margin: 4px 0px; padding: 2px 4px;");
	$("<a>")
		.attr("id", "unify-navbox")
		.attr("href", "#")
		.text("Navbox egységesít")
		.click(unifyNavbox)
		.appendTo($menu);
	$("#specialchars").after($menu);
	
}) ();