MediaWiki:Gadget-edit-summaries.js

Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.

  • Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
  • Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
  • Internet Explorer / Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5
  • Opera: Naciśnij klawisze Ctrl+F5.
/*
</pre>

== Automatyczne opisy zmian ==
; Autor (Author): [[:pl:User:Adziura|Adam Dziura]]
; Poprawki (Fixes): [[:pl:User:Nux|Maciej Jaros]]
<pre>
*/

function przyciskiOpis()
{
	// stop before starting
	if (window.przyciskiOpisDone)
		return;

	//
	// sprawdzenie, czy to jest pole edycji z opisem zmian (nie jest takie jako nagłówek)
	var el = document.getElementById('wpSummaryLabel');
	if (el)
	{
		if (el.innerHTML.indexOf('pis zmian')==-1)
			return	// stop
		;

	}
	else
	{
		return;	// stop
	}

	//
	// dodanie elementu okalającego przyciski bezpośrednio za opisem zmian
	var el = document.getElementById('wpSummary').nextSibling;
	var opisBtns = document.createElement('span');
	opisBtns.id = 'userSummaryButtons'
	el.parentNode.insertBefore(document.createElement('br'), el)
	el.parentNode.insertBefore(opisBtns, el)

	//
	// dodanie przycisku specjalnego - do rozwijania skrótów
	var btn = przyciskiDodaj(opisBtns, '+rozwiń skróty', 'rozwinSkrotyOpisowZm()', '',
		'Rozwiń skróty opisów zmian');
	//btn.style.cssText = 'position:absolute; top:0; right:0;';
	btn.style.cssText = 'float:right;border-color:#dd0;background-color:#dea';
	btn.id = 'btn_opisy_zm_waxon_off'
	btn.wax_on = false;

	//
	// dodawanie przycisków
	var kl = '';	// klasa jest niepotrzebna (wszystkie <a> w #userSummaryButtons ustawione poprzez CSS)
	if (opisBtns)
	{
		// drobne różne
		przyciskiDodaj(opisBtns, 'lit.', 'dodajOpis("lit.")', kl,
			'Poprawiono literówkę');
                przyciskiDodaj(opisBtns, 'int.', 'dodajOpis("int.")', kl,
                        'Poprawiono interpunkcję');
                przyciskiDodaj(opisBtns, 'format.', 'dodajOpis("formatowanie")', kl,
                        'Przeformatowano');
                przyciskiDodaj(opisBtns, 'notka', 'dodajOpis("notka")', kl,
                        'Poprawiono/dodano notkę');
                przyciskiDodaj(opisBtns, 'sort.', 'dodajOpis("sortowanie")', kl,
                        'Posortowano cytaty alfabetycznie lub chronologicznie');
		przyciskiDodaj(opisBtns, 'grafika', 'dodajOpis("grafika")', kl,
			'Poprawiono/dodano grafikę');
		przyciskiDodaj(opisBtns, 'ogonki', 'dodajOpis("polskie znaki")', kl,
			'Poprawa polskich znaków');

		// opisBtns.appendChild(document.createTextNode(' ')); // odstęp

		// drobne około wikizacyjne
		przyciskiDodaj(opisBtns, 'linki-zew', 'dodajOpis("linki zewnętrzne")', kl,
			'Poprawiono/dodano linki zewnętrzne');
		przyciskiDodaj(opisBtns, 'linki-popr', 'dodajOpis("poprawa linków")', kl,
			'Poprawiono linki zewnętrzne/wewnętrzne');
		przyciskiDodaj(opisBtns, 'interwiki', 'dodajOpis("[[Pomoc:Interwiki|interwiki]]")', kl,
			'Poprawiono/dodano linki do innych wersji Wikipedii');
		przyciskiDodaj(opisBtns, 'kat.', 'dodajOpis("kat.")', kl,
			'Poprawiono/dodano kategorię');

		opisBtns.appendChild(document.createTextNode(' ')); // odstęp

		// drobne około techniczne
		przyciskiDodaj(opisBtns, 'stub', 'dodajOpis("stub (zalążek)")', kl,
			'Ten artykuł to stub');
		przyciskiDodaj(opisBtns, 'ujedn.', 'dodajOpis("ujednoznacznienie")', kl,
			'Poprawiono/dodano stronę ujednoznaczniającą');
		przyciskiDodaj(opisBtns, 'szablon', 'dodajOpis("szablon")', kl,
			'Poprawiono/dodano szablon');

		opisBtns.appendChild(document.createElement('br'));

		// drobne inne
		przyciskiDodaj(opisBtns, 'dr.meryt.', 'dodajOpis("drobne merytoryczne")', kl,
			'Drobne zmiany merytoryczne');
		przyciskiDodaj(opisBtns, 'dr.red.', 'dodajOpis("drobne redakcyjne")', kl,
			'Drobne zmiany redakcyjne');
		przyciskiDodaj(opisBtns, 'dr.tech.', 'dodajOpis("drobne techniczne")', kl,
			'Drobne zmiany techniczne');

		opisBtns.appendChild(document.createTextNode(' ')); // odstęp

		// do użytkownika i około administracyjne
		przyciskiDodaj(opisBtns, 'witaj', 'dodajOpis("witaj")', kl,
			'Dodano powitanie dla użytkownika');
		przyciskiDodaj(opisBtns, 'test', 'dodajOpis("test")', kl,
			'Dodano ostrzeżenie dla użytkownika');

		przyciskiDodaj(opisBtns, 'npa', 'dodajOpis("[[WC:NPA|npa]]")', kl,
			'Zgłoszono artykuł jako podejrzany o naruszenie praw autorskich');
		przyciskiDodaj(opisBtns, 'sdu', 'dodajOpis("[[WC:SDU|sdu]]")', kl,
			'Zgłoszono artykuł do usunięcia');
		przyciskiDodaj(opisBtns, 'ek', 'dodajOpis("[[WC:EK|ek]]")', kl,
			'Zgłoszono artykuł do ekspresowego (s)kasowania');
		przyciskiDodaj(opisBtns, 'rev.', 'dodajOpis("przywrócenie poprzedniej wersji")', kl,
			'przywrócenie poprzedniej wersji');
		przyciskiDodaj(opisBtns, 'integracja', 'dodajOpis("integracja (autorzy: [[Użytkownik:]], [[Użytkownik:]]...")', kl,
			'Integracja artykułu z innym - podaj autorów wklejanego tekstu!');

		opisBtns.appendChild(document.createTextNode(' ')); // odstęp

		// insze do dyskusji i głosowań
		przyciskiDodaj(opisBtns, 'głos', 'dodajOpis("głos")', kl,
			'Oddano głos');
		przyciskiDodaj(opisBtns, 'komentarz', 'dodajOpis("komentarz")', kl,
			'Dodano komentarz w dyskusji lub do głosu');

		// odstęp przed własnymi
		opisBtns.appendChild(document.createTextNode(' ')); // odstęp
	}
}

/*
Parametry:
* elUserBtns - element okalający, do którego dodać przycisk
* pTekst - tekst w środku przycisku
* pAkcja - akcja (w formie tekstowej) jaką wykonać przy naciśnięciu; może być ciągiem poleceń
* pKlasa - klasa jeśli konieczna
* pOpis - opis widoczny w dymku przy przycisku
* zwraca dodany element
*/
window.przyciskiDodaj = function(elUserBtns, pTekst, pAkcja, pKlasa, pOpis)
{
	var nowyBtn = document.createElement('a');

	// atrybuty
	nowyBtn.appendChild(document.createTextNode(pTekst));
	nowyBtn.title = pOpis;
	if (pKlasa != '')
		nowyBtn.className = pKlasa
	;
	nowyBtn.onclick = new Function(pAkcja);

	// dodanie przycisku
	elUserBtns.appendChild(nowyBtn);

	return nowyBtn;
}

window.dodajOpis = function(opis)
{
	var wpS = document.editform.wpSummary;
	if (wpS.value != '' && wpS.value.charAt(wpS.value.length-2) != '/')
	{
		wpS.value += ', ' + opis
	}
	else
	{
		wpS.value += opis
	}
}

if (mw.config.get('wgAction') == 'edit' || mw.config.get('wgAction') == 'submit')
{
	if (mw.config.get('wgNamespaceNumber') > -1)
	{
		jQuery(document).ready(przyciskiOpis);
	}
}

//
// rozwiajanie skrótów do pełnych opisów i z powrotem
window.rozwinSkrotyOpisowZm = function()
{
	var els = document.getElementById('userSummaryButtons').getElementsByTagName('a');
	for (var i=0; i<els.length; i++)
	{
		var tit = els[i].title;
		els[i].title = els[i].innerHTML;
		els[i].innerHTML = tit;
	}
	var btn = document.getElementById('btn_opisy_zm_waxon_off');
	btn.innerHTML = (btn.wax_on == false) ? '&nbsp; -zwiń skróty' : '+rozwiń skróty';
	btn.wax_on = !btn.wax_on;
}