/* bbcode by Rafael Kukawski - www.rafael.webhelp.pl
bbcode v 3.1 beta - ostatnio zmieniony 24.05.2004, 23:03
nie usuwaj tego komentarza!*/
// konfiguracja
p="document.forms['kom'].elements['text']"; // zmien tylko nazwe formularza oraz pola formularza
// Ponizej nic nie zmieniaj. Wszelkie zmiany moga spowodowac niedzialanie skryptu
var stack=[], tags=[];
// ponizsze 3 funkcje pochodza z oryginalnego skryptu bbcodu z phpbb.com
function getarraysize(array) {
	for (i = 0; i < array.length; i++) {
		if ((array[i] == "undefined") || (array[i] == "") || (array[i] == null))
			return i;
		}
	return array.length;
}

function arraypop(array){arraysize=getarraysize(array);retval=array[arraysize-1];delete array[arraysize-1];return retval;}
function arraypush(element,array){array[getarraysize(array)]=element;}
function bbcode(what){c=eval(p);
s=(document.selection)? (sel=document.selection.createRange().text).length : c.selectionEnd-c.selectionStart; // tu uwazac na przegladarki, ktore tych wlasciwosci nie obsluguja
if(s>0){if(document.selection){document.selection.createRange().text='['+what+']'+sel+'[/'+what+']';}else {begin=c.selectionStart;end=c.selectionEnd;c.value=c.value.substring(0,begin)+'['+what+']'+c.value.substring(begin,end)+'[/'+what+']'+c.value.substring(end, c.value.length);}}
else {decide(what);}
}
// --------------------------------------------
function star(what,v){document.getElementById(what).value=what+v;}
// ---------
function decide(what){
if(!tags[what]){tags[what]=0;}
if(tags[what]){close(what);}
else {arraypush(what,stack);tags[what]=1; add_to_form('['+what+']');star(what,'*'); }
}
function add_to_form(what){c=eval(p);
if(document.selection){c.focus();document.selection.createRange().text=what;}
else if(c.selectionStart || c.selectionStart=="0"){c.value=c.value.substring(0,c.selectionStart)+what+c.value.substring(c.selectionEnd,c.value.length);}
else { c.value+=what; }
}
function close(what){e=arraypop(stack);add_to_form('[/'+e+']'); tags[e]=0; star(e,''); (e==what)?function(){return true;}:close(what);}
function close_all(){while(getarraysize(stack)>0){e=arraypop(stack);add_to_form('[/'+e+']');tags[e]=0;star(e,'');}}
function emoticon(smiley){add_to_form(smiley);}