// variables:
// myform - name of form in page
// txtarea - name of text area input 

var myform;
var txtarea;

function init()
{
	myform = document.getElementById("edtform");
	txtarea = document.getElementById("edtarea");
}
window.onload=init;

var theSelection = false;

var clientPC = navigator.userAgent.toLowerCase();
var clientVer = parseInt(navigator.appVersion);

var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));
var is_nav  = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)
                && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)
                && (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));

var is_win   = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
var is_mac    = (clientPC.indexOf("mac")!=-1);

b_help = "Bold text: [b]text[/b]";
i_help = "Italic text: [i]text[/i]";
u_help = "Underline text: [u]text[/u]";
q_help = "Quote text: [quote]text[/quote]";
c_help = "Code display: [code]code[/code]";
p_help = "Insert image: [img]http://image_url[/img]";
w_help = "Insert URL: [url]http://url[/url] or [url=http://url]URL text[/url]";
s_help = "Font color: [color=red]text[/color] Tip: can also use HTML color=#FF0000";
f_help = "Font size: [size=9]small text[/size]";

var Quote = 0;
var Bold  = 0;
var Italic = 0;
var Underline = 0;
var Code = 0;

function helpline(help) {
	myform.helpbox.value = eval(help + "_help");
	myform.helpbox.readOnly = "true";
}

function checkForm() {
	formErrors = false;    
	if (txtarea.value.length < 2) {
		formErrors = "You must enter a message when posting";
	}
	if (formErrors) {
		alert(formErrors);
		return false;
	} else {
		//formObj.preview.disabled = true;
		//formObj.submit.disabled = true;
		return true;
	}
}

function emoticon(text) {
	text = ' ' + text + ' ';
	PostWrite(text);
}

function bbfontstyle(bbopen, bbclose) {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (!theSelection) {
			txtarea.value += bbopen + bbclose;
			txtarea.focus();
			return;
		}
		document.selection.createRange().text = bbopen + theSelection + bbclose;
		txtarea.focus();
		return;
	} else {
		txtarea.value += bbopen + bbclose;
		txtarea.focus();
		return;
	}
	storeCaret(myform.message);
}

function storeCaret(textEl) {
	if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();
}

function PostWrite(text) {
	if (txtarea.createTextRange && txtarea.caretPos) {
		var caretPos = txtarea.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?	text + ' ' : text;
	}
	else txtarea.value += text;
	txtarea.focus(caretPos)
}

function BBCcode() {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (theSelection != '') {
		document.selection.createRange().text = "[code]" + theSelection + "[/code]";
		txtarea.focus();
		return;
		}
	}
	if (Code == 0) {
		ToAdd = "[code]";
		myform.code.value = "Code*";
		Code = 1;
	} else {
		ToAdd = "[/code]";
		myform.code.value = "Code";
		Code = 0;
	}
	PostWrite(ToAdd);
}

function BBCquote() {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (theSelection != '') {
		document.selection.createRange().text = "[quote]" + theSelection + "[/quote]";
		txtarea.focus();
		return;
		}
	}
	if (Quote == 0) {
		ToAdd = "[quote]";
		myform.quote.value = "Quote*";
		Quote = 1;
	} else {
		ToAdd = "[/quote]";
		myform.quote.value = "Quote";
		Quote = 0;
	}
	PostWrite(ToAdd);
}

function BBCbold() {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (theSelection != '') {
		document.selection.createRange().text = "[b]" + theSelection + "[/b]";
		txtarea.focus();
		return;
		}
	}
	if (Bold == 0) {
		ToAdd = "[b]";
		myform.bold.value = "B*";
		Bold = 1;
	} else {
		ToAdd = "[/b]";
		myform.bold.value = "B";
		Bold = 0;
	}
	PostWrite(ToAdd);
}

function BBCitalic() {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (theSelection != '') {
		document.selection.createRange().text = "[i]" + theSelection + "[/i]";
		txtarea.focus();
		return;
		}
	}
	if (Italic == 0) {
		ToAdd = "[i]";
		myform.italic.value = "i*";
		Italic = 1;
	} else {
		ToAdd = "[/i]";
		myform.italic.value = "i";
		Italic = 0;
	}
	PostWrite(ToAdd);
}

function BBCunder() {
	if ((clientVer >= 4) && is_ie && is_win) {
		theSelection = document.selection.createRange().text;
		if (theSelection != '') {
		document.selection.createRange().text = "[u]" + theSelection + "[/u]";
		txtarea.focus();
		return;
		}
	}
	if (Underline == 0) {
		ToAdd = "[u]";
		myform.under.value = "U*";
		Underline = 1;
	} else {
		ToAdd = "[/u]";
		myform.under.value = "U";
		Underline = 0;
	}
	PostWrite(ToAdd);
}

function BBCurl() {
	var FoundErrors = '';
	var enterURL   = prompt("URL adresa:", "http://");
	var enterTITLE = prompt("Zobrazi sa ako:", "Kliknite tu");
	if (!enterURL)    {
		FoundErrors += " You have not entered the URL yet!";
	}
	if (!enterTITLE)  {
		FoundErrors += " You have not entered the title yet!";
	}
	if (FoundErrors)  {
		alert("Error!"+FoundErrors);
		return;
	}
	var ToAdd = "[url="+enterURL+"]]"+enterTITLE+"[/url]";
	PostWrite(ToAdd);
}

function BBCimg() {
	var FoundErrors = '';
	var enterURL   = prompt("Enter your image URL","http://");
	if (!enterURL) {
		FoundErrors += " You have not entered the URL yet!";
	}
	if (FoundErrors) {
		alert("Error!"+FoundErrors);
		return;
	}
	var ToAdd = "[img]"+enterURL+"[/img]";
	PostWrite(ToAdd);
}

function ithumb()
{
	
	inx = myform.thumbs_selector.selectedIndex;
	picname=myform.thumbs_selector.options[inx].text;
	tag="[thumb=datas/thumbs/"+picname+"]"+picname+"[/thumb]";
	txtarea.value += tag;
	
	return false;
}

function ipic()
{
	inx = myform.pics_selector.selectedIndex;
	picname = myform.pics_selector.options[inx].text;
	tag="[img]datas/users/"+picname+"[/img]";
	txtarea.value += tag;
	
	return false;
}
