//Globals
var guestbook_form;
var guestbook_submit;
var guestbook_name;
var guestbook_msg;
var guestbook_posts;
var guestbook_code;

window.onload = setUpGuestBook;

function setUpGuestBook()
{
	guestbook_form = document.getElementById('guestbook_form');
	guestbook_submit = document.getElementById('guestbook_submit');
	guestbook_name = document.getElementById('guestbook_name');
	guestbook_msg = document.getElementById('guestbook_message');
	guestbook_posts = document.getElementById('posts');
	guestbook_spamblocker = document.getElementById('other');
	guestbook_code = document.getElementById('guestbook_code');
	
	//guestbook_form.action = "javascript:validateForm(guestbook_name, guestbook_msg, guestbook_spamblocker, guestbook_code)";
	//guestbook_form.action = "javascript:addGuestBookPost()";
}

function validateForm(name, message, spamblocker, code)
{
	var name = name;
	var message = message;
	var spamblocker = spamblocker;
	var code = code;
	var msg_str = message.value;

	if (msg_str.indexOf("<") === -1 && msg_str.toLowerCase().indexOf("http") === -1 
			&& msg_str.indexOf("\\") === -1 && msg_str.indexOf("/") === -1)
	{	
		if (name.value == null || name.value == "")
		{
			alert ('Name field must be completed');
			name.focus;
		}
		else if (message.value == null || message.value == "")
		{
			alert ('Message field must be completed');
			message.focus;
		}
		else if (code.value == null || code.value == "")
		{
			alert ('Code field must be completed');
			code.focus;
		}
		else if (spamblocker.value == null || spamblocker.value == "")
		{
			addGuestBookPost();
		}
		else
		{
			alert('Your message has been identified as SPAM and will therefore not be posted.');
		}
	}
	else
	{
		alert ('Ilegal characters used in message. Please remove them and try again.');
	}
}

function addGuestBookPost()
{
	var name = guestbook_name.value;
	var msg = guestbook_msg.value;
	var code = guestbook_code.value;
	
	name = escape(name);
	msg = escape(msg);
	code = escape(code);
	
	var request = getXMLHttpRequestObject();
	guestbook_submit.disabled = "disabled";
	guestbook_submit.value = "Posting...";
	request.open('POST', 'add_guestbook.php?t=' + new Date().getTime());
	request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	request.onreadystatechange = function()
	{
		if(request.readyState == 4)
		{
			guestbook_submit.disabled = "";
			guestbook_submit.value = "Post";
			guestbook_posts.innerHTML = request.responseText;
		}
	}
	var params = "name=" + name + "&msg=" + msg + "&code=" + code;
	request.send(params);	
}

function getXMLHttpRequestObject()
{
	if(window.XMLHttpRequest)
		return new XMLHttpRequest();
	else if(window.ActiveXObject)
		return new ActiveXObject('MICROSOFT.XMLHTTP');
	else
		alert('Your browser does not support ajax!');
}
