function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		//Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function validateForm()
{
	var bValidated = true;
	var myForm = document.submitComment;
	
	if(myForm.name.value == "")
	{
		document.getElementById('nameError').innerHTML = "Please enter a name.";
		bValidated = false;
	}
	
	if(tinyMCE.activeEditor.getContent() == "")
	{
		document.getElementById('textError').innerHTML = "Please enter a comment.";
		bValidated = false;
	}
		
	if(bValidated)
	{
		myForm.submit();
	}
}

function addComment()
{
	xmlHttp=GetXmlHttpObject();
	xmlHttp.onreadystatechange=commentResult;
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	}
	var url="./includes/ajaxcomment.php";
	url=url+"?id="+document.getElementById('mcpsPage').value;
	url=url+"&name="+document.getElementById('name').value;
	url=url+"&text="+tinyMCE.activeEditor.getContent();	
	url=url+"&captcha="+document.getElementById('captcha').value;
	url=url+"&sid="+Math.random();
	//alert(url);
	
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function commentResult()
{
	
	if (xmlHttp.readyState==4)
	{
		
 		var xmlDoc=xmlHttp.responseText;
 		
 		var retVal = xmlDoc.substring(0, xmlDoc.indexOf('&'));
 		var errorMessage = xmlDoc.substr(xmlDoc.indexOf('&') + 1);
		
		//alert(xmlDoc);
		if(retVal == "-1")
			document.getElementById('commentError').innerHTML = errorMessage;
		else
			document.getElementById('comments').innerHTML = xmlDoc;
	}
}

function addEmoticon(strEmoticon)
{
	var taText = document.getElementById('text');
	
	if(document.selection)
	{
		alert("These emoticons only work in FireFox at this time.");
		//insertAtCaret("text", strEmoticon);
	}
	else
	{
		var strBeginning = taText.value.substring(0, taText.selectionStart);
		var strEnd = taText.value.substring(taText.selectionStart + 1);
		
		taText.value = strBeginning + strEmoticon + strEnd;
	}
}

function addStyle(strStyle)
{
	var taText = document.getElementById('text');
	
	if(document.selection)
	{
		//alert("These emoticons only work in FireFox at this time.");
		var selRange = document.selection.createRange();
		taText.focus();
		selRange.text = "[" + strStyle + "]" + selRange.text + "[/" + strStyle + "]";
	}
	else
	{
		var strBeginning = taText.value.substring(0, taText.selectionStart);
		var strMiddle = taText.value.substring(taText.selectionStart, taText.selectionEnd);
		var strEnd = taText.value.substring(taText.selectionEnd);
		
		taText.value = strBeginning + "[" + strStyle + "]" + strMiddle + "[/" + strStyle + "]" + strEnd;
	}
}

function insertAtCaret(areaId,text) 
{ 
	var txtarea = document.getElementById(areaId); 
	var scrollPos = txtarea.scrollTop; 
	var strPos = 0; 
	var br = ((txtarea.selectionStart || txtarea.selectionStart == '0') ? "ff" : (document.selection ? "ie" : false ) ); 
	
	if (br == "ie") 
	{ 
		txtarea.focus(); 
		var range = document.selection.createRange(); 
		range.moveStart ('character', -txtarea.value.length); 
		strPos = range.text.length; 
	} 
	else if (br == "ff") 
		strPos = txtarea.selectionStart; 
	
	var front = (txtarea.value).substring(0,strPos); 
	var back = (txtarea.value).substring(strPos,txtarea.value.length); 
	txtarea.value=front+text+back; 
	strPos = strPos + text.length; 
	
	if (br == "ie") 
	{ 
		txtarea.focus(); 
		var range = document.selection.createRange(); 
		range.moveStart ('character', -txtarea.value.length); 
		range.moveStart ('character', strPos); 
		range.moveEnd ('character', 0); 
		range.select(); 
	} 
	else if (br == "ff") 
	{ 
		txtarea.selectionStart = strPos; 
		txtarea.selectionEnd = strPos; 
		txtarea.focus(); 
	} 
	
	txtarea.scrollTop = scrollPos; 
} 
