// author: Netbasics B.V. - www.netbasics.nl

// Forum functions

function editItem(itm_id){
	document.submitForm.message.value = document.getElementById('item_'+itm_id).innerHTML;
	document.submitForm.id.value = itm_id;
}

function editTopic(itm_id){
	document.submitForm.message.value = document.getElementById('topic_'+itm_id).innerHTML;
	document.submitForm.title.value = document.getElementById('title_'+itm_id).innerHTML;
	document.submitForm.topic_id.value = itm_id;
}

function quoteItem(itm_id,nickname){
	document.submitForm.message.value += '[quote="' + nickname + '"]' + document.getElementById('item_'+itm_id).innerHTML + '[/quote]';
	document.submitForm.message.focus();
}

var Toolbar = 1;
				
function replaceText(text, textarea)
{
	// Attempt to create a text range (IE).
	if (typeof(textarea.caretPos) != "undefined" && textarea.createTextRange)
	{
		var caretPos = textarea.caretPos;

		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
		caretPos.select();
	}
	// Mozilla text range replace.
	else if (typeof(textarea.selectionStart) != "undefined")
	{
		var begin = textarea.value.substr(0, textarea.selectionStart);
		var end = textarea.value.substr(textarea.selectionEnd);
		var scrollPos = textarea.scrollTop;

		textarea.value = begin + text + end;

		if (textarea.setSelectionRange)
		{
			textarea.focus();
			textarea.setSelectionRange(begin.length + text.length, begin.length + text.length);
		}
		textarea.scrollTop = scrollPos;
	}
	// Just put it on the end.
	else
	{
		textarea.value += text;
		textarea.focus(textarea.value.length - 1);
	}
}

// Surrounds the selected text with text1 and text2.
function surroundText(text1, text2, textarea)
{
	// Can a text range be created?
	if (typeof(textarea.caretPos) != "undefined" && textarea.createTextRange)
	{
		var caretPos = textarea.caretPos, temp_length = caretPos.text.length;

		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text1 + caretPos.text + text2 + ' ' : text1 + caretPos.text + text2;

		if (temp_length == 0)
		{
			caretPos.moveStart("character", -text2.length);
			caretPos.moveEnd("character", -text2.length);
			caretPos.select();
		}
		else
			textarea.focus(caretPos);
	}
	// Mozilla text range wrap.
	else if (typeof(textarea.selectionStart) != "undefined")
	{
		var begin = textarea.value.substr(0, textarea.selectionStart);
		var selection = textarea.value.substr(textarea.selectionStart, textarea.selectionEnd - textarea.selectionStart);
		var end = textarea.value.substr(textarea.selectionEnd);
		var newCursorPos = textarea.selectionStart;
		var scrollPos = textarea.scrollTop;

		textarea.value = begin + text1 + selection + text2 + end;

		if (textarea.setSelectionRange)
		{
			if (selection.length == 0)
				textarea.setSelectionRange(newCursorPos + text1.length, newCursorPos + text1.length);
			else
				textarea.setSelectionRange(newCursorPos, newCursorPos + text1.length + selection.length + text2.length);
			textarea.focus();
		}
		textarea.scrollTop = scrollPos;
	}
	// Just put them on the end, then.
	else
	{
		textarea.value += text1 + text2;
		textarea.focus(textarea.value.length - 1);
	}
}

function bbc_highlight(something, mode)
{
	something.style.backgroundImage = "url(/_images" + (mode ? "/forums/bbc_hoverbg.gif)" : "/forums/bbc_bg.gif)");
}

function openSmileyPopup(codes)
{
	var url = '/forums/smileys.asp?popup=true';

	if (codes) { url += "#codes"; }

	var tempdate = new Date();
	winbreedte = 718;
	winhoogte = 500;
	winposx = (screen.availWidth-winbreedte)/2; winposy = (screen.availHeight-winhoogte)/2-15;
	var winname = "bcscon" + tempdate.getTime();
	window.open(url,winname,"screenX="+winposx+",left="+winposx+",screenY="+winposy+",top="+winposy+",toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,copyhistory=0,width="+winbreedte+",height="+winhoogte);
}
