Wikipedysta:Matma Rex/defaultsort.js

W dzisiejszym świecie Wikipedysta:Matma Rex/defaultsort.js stał się tematem o ogromnym znaczeniu i znaczeniu. Jest wiele osób, na które Wikipedysta:Matma Rex/defaultsort.js w ten czy inny sposób wpływa i dlatego istotne jest podejście do tego problemu z różnych perspektyw. W tym artykule zagłębimy się w analizę Wikipedysta:Matma Rex/defaultsort.js, badając jej implikacje, ewolucję w czasie i wpływ na obecne społeczeństwo. Dzięki podejściu multidyscyplinarnemu będziemy starali się lepiej zrozumieć Wikipedysta:Matma Rex/defaultsort.js i zaoferować nowe spostrzeżenia i refleksje, które wzbogacą debatę na ten temat.
// <nowiki>
// Autor: ]

var categories = ,
	defaultsort = 

function defsortclean() {
	categories = 
	defaultsort = 
}

function ucFirst( txt ) {
	t1 = txt.substr( 0, 1 ).toUpperCase()
	t2 = txt.substr( 1 )

	return t1 + t2
}

function getCategory( all, s1, s2, s3, s4 ) {
	if ( !s4 ) s4 = ''

	categories.push( {
		catname: ucFirst( s2 ),
		sort: ucFirst( s4 )
	} )

	return ''
}

function getAll() {
	str = document.getElementById( 'wpTextbox1' ).value

	str = str.replace( /\s*\\]/gi, getCategory )

	var ok = true,
		l = categories.length - 1

	for ( i = 0; i < l; i++ ) ok = ok && categories.sort == categories.sort

	if ( !ok ) {
		alerttxt = 'Nie wszystkie kategorie mają przypisany ten sam sposób sortowania! Występujące sposoby to:' + "\n"

		for ( i = 0; i < categories.length; i++ ) {
			alerttxt += ( i + 1 ) + '. ' + categories.sort + "\n"
		}

		alerttxt += "\n" + 'Jeżeli chcesz wybrać jeden z nich, wpisz jego numer poniżej i kliknij "OK". Zostaw puste pole i kliknij "OK", aby wybrać inny sposób. Jeżeli chcesz anulować proces, kliknij "Anuluj".'

		p = prompt( alerttxt )

		if ( p == undefined ) return defsortclean()
		else if ( p == '' ) {
			sort = prompt( 'Podaj sposób sortowania:' )
			if ( sort == undefined ) sort = ''
		} else sort = categories.sort
	} else {
		if ( confirm( 'Czy chcesz pozostawić domyślny sposób sortowania: ' + categories.sort + '?' ) ) {
			sort = categories.sort
		} else {
			sort = prompt( 'Podaj sposób sortowania:', categories.sort )
			if ( sort == undefined ) sort = categories.sort
		}
	}


	str += "\n" + '{{SORTUJ:' + sort + '}}' + "\n"

	for ( i = 0; i < categories.length; i++ ) {
		str += '.catname + ']]' + "\n"
	}

	document.getElementById( 'wpTextbox1' ).value = str

	alert( '{{SORTUJ:' + sort + '}} utworzony! Pamiętaj, aby sprawdzić zmiany oraz umieścić kategorie wraz z SORTUJ w odpowiednim miejscu (można to zrobić narzędziem WP:SK).' )

	defsortclean()
}

mw.loader.using( "ext.gadget.lib-toolbar", function() {
	toolbarGadget.addButton( {
		title: 'Ustaw klucz sortowania',
		alt: '{{D',
		icon: '//upload.wikimedia.org/wikipedia/commons/9/9f/Button_defaultsort.png',
		onclick: function() {
			getAll();
		}
	} );
} );
// </nowiki>