User:Nux/monobook.js

From Wikipedia

Note: After saving, you may have to bypass your browser's cache to see the changes. Mozilla / Firefox / Safari: hold down Shift while clicking Reload, or press Ctrl-Shift-R (Cmd-Shift-R on Apple Mac); IE: hold Ctrl while clicking Refresh, or press Ctrl-F5; Konqueror:: simply click the Reload button, or press F5; Opera users may need to completely clear their cache in Tools→Preferences.

/*
==== Automatic summaries ====
* Author: [[:pl:User:Adziura|Adam Dziura]]
* Fixes: [[:pl:User:Nux|Maciej Jaros]]
<pre>
*/
// main function
addOnloadHook(function ()
{
	// stop before starting
	if (window.autoSummariesDone)
		return;

	//
	// check if user is editing and if this is a summary field (not a section header field)
	var el = document.getElementById('wpSummary');
	if (el)
	{
		if (el.getAttribute('tabindex')==1) // hack! hopefully will not be changed
			return	// stop
		;
	}
	else
	{
		return;	// stop
	}
	
	//
	// adding element that will hold buttons
	el = el.nextSibling;
	var parent = document.createElement('span');
	parent.id = 'userSummaryButtonsA'
	el.parentNode.insertBefore(document.createElement('br'), el)
	el.parentNode.insertBefore(parent, el)
	
	//
	// adding summary buttons
	var cl = '';	// class is not needed (as on may style with the element above)
	// drobne różne
	addSummaryBtn(parent, 'ort.', 'addSumm("ort.")', cl,
		'Poprawiono błąd ortograficzny');
	addSummaryBtn(parent, 'styl', 'addSumm("styl")', cl,
		'Poprawiono błąd stylistyczny i podobne');
	addSummaryBtn(parent, 'int.', 'addSumm("int.")', cl,
		'Poprawiono interpukcję');
	addSummaryBtn(parent, 'lit.', 'addSumm("lit.")', cl,
		'Poprawiono literówkę');
	addSummaryBtn(parent, 'ogonki', 'addSumm("polskie znaki")', cl,
		'Poprawa polskich znaków');
});

/*
Params:
* el - parent element to hold buttons
* t - text to appear in the button
* a - action (as string) to be run after clicking a button; may be more then one function
* c - optional class name to be attached to the button
* d - a tooltip to be show when one highlights the button
*/
function addSummaryBtn(el, t, a, c, d) {
	var btn = document.createElement('a');

	btn.appendChild(document.createTextNode(t));
	btn.title = d;
	if (c!='')
		btn.className = c
	;
	btn.onclick = new Function(a);

	el.appendChild(btn);
}

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


// </pre>
Navigation
generic heading