//
// CHECK CHATBOX
//
function check_chatbox(form){
	form.message.value = form.message.value.replace(/^\s*/,"").replace(/\s*$/,"");

	if (form.name.value == '') {
		alert("Please enter a username for the chatbox in order to post a message!");
		form.name.focus();
		return false;
	}
	if (form.message.value.length < 5) {
		alert("Your message must be at least 5 letters long! (initial and trailing blanks are automatically deleted)");
		form.message.focus();
		return false;
	}
	if (form.message.value.length > 150) {
		alert("Your message is more than 150 letters long, please make it shorter!");
		form.message.value = document.formChat.message.value.substr(0,149);
		return false;
	}
	return true;
}


//
// ADD MESSAGE
//
function submit_chatbox(form){
	if (check_chatbox(form)) {
		//attempt to create a XmlHttp object
		if ((http_conn = GetXmlHttpObject()) == null) {
			alert('Your browser does not support AJAX!');
			return;
		}
		
		//make a http post request
		if (navigator.appName.indexOf('Microsoft') != -1) {
			url  = 'pages/rm_chatbox_messages.php';
		} else {
			url  = document.getElementsByTagName('base')[0].href;
			url += 'pages/rm_chatbox_messages.php';
		}		
		url += '?cb_name=' + escape(form.name.value);
		url += '&cb_message=' + escape(form.message.value);
		url += '&s_id' + Math.random();
		
		//set the function that will handle the http request
		http_conn.onreadystatechange = function(){
			if (http_conn.readyState == 4) {
				document.getElementById('chatbox_messages').innerHTML = http_conn.responseText;
			} else {
				document.getElementById('chatbox_messages').innerHTML = '<img src="images/icon_loading.gif" alt="Loading"/ >';
			}
		}

		form.message.value = '';
		http_conn.open('GET', url, true);
		http_conn.send(null);
		return;
	}	
}

//
//CREATE A XmlHttpObject
//
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;
}