var requiredFields = new Array("name","emailaddr","message");
var errorFields = new Array();
var errorMessage = "Please complete all required fields";
var emailErrorMessage = "Please enter a valid E-mail address";


function check_fields(e)
{
	var eRegEx = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
    var regex = new RegExp(eRegEx );

	for(var i=0;i<requiredFields.length;i++)
	{
		if (document.getElementById(requiredFields[i]).value == "")
		{
			errorFields.push(requiredFields[i]);
		}
		else
		{
			document.getElementById(requiredFields[i]).className = "";
		}
	}

	if (errorFields.length > 0)
	{
		for(i=0;i<errorFields.length;i++)
		{
			document.getElementById(errorFields[i]).className = "missing";
		}

		createErrorObj(errorMessage)		
		errorFields = null;
		errorFields = new Array();
	}
	else if (!regex.test(document.getElementById("emailaddr").value))
	{
		document.getElementById("emailaddr").className = "missing";
		createErrorObj(emailErrorMessage);
	}
	else
	{
		document.getElementById("contactform").submit();
	}
	return false;
}

function createErrorObj(msg)
{
		if (!document.getElementById("error"))
		{
			errorP = document.createElement("p");
			errorP.setAttribute('id','error');
			errorP.setAttribute('class','error');
			errorTxt = document.createTextNode(msg);
			errorP.appendChild(errorTxt);
			document.getElementById("contactform").insertBefore(errorP,document.getElementById("contactform").firstChild);
		}
		else
		{
			document.getElementById("error").innerHTML = msg;
		}
	
}



function contact_init()
{
	addEvent(document.getElementById("contactform"),"submit",check_fields,false);
	addEvent(document.getElementById("contactform"),"submit",cancelClick,false);
}



addEvent(window,"load",contact_init,false);