function submitComment()
{
	var form = document.commentForm;

	var form_elements = new Array(
		[form.comment_name,  "", true],
		[form.comment_email, /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i, false],
		[form.comment_body,  "", true]
	);

	Validator.reset(form_elements);
	var noErrors = Validator.validate(form_elements);

	var error = "1px #f45 solid";

	if(!noErrors)
	{
		document.getElementById("error_msg").style.display = "block";
		document.location = "#comment_form";
	}
	else
	{
		form.submit();
	}
}


var Validator = {

	reset : function(elements)
	{
		var e = elements;

		for(var i=0; i<e.length; i++)
		{
			if(e[i][0].value.indexOf(" ") > -1) { e[i][0].value = e[i][0].value.replace(/^\s+|\s+$/g, ""); }
			e[i][0].style.border = "1px #19120F solid";
		}

		document.getElementById("error_msg").style.display = "none";
	},

	validate : function(elements)
	{
		var noErrors = true;
		var e = elements;

		for(var i=0; i<e.length; i++)
		{
			if(!Validator.test(e[i][0], e[i][1], e[i][2]))
			{
				var noErrors = false;
			}
		}

		return noErrors;
	},

	test : function(element, test, flag)
	{
		var result = false;

		if(typeof(test) == "string")
		{
			if(element.value == test) { result = true; }
		}
		else
		{
			result = test.test(element.value);
		}

		if(result == flag)
		{
			element.style.border = "1px #f45 solid";

			return false;
		}

		return true;
	}

}