var mBlnFormSubmitted = false;

window.onload = Shadowbox.init;

function displayMessage(strMsgNumber, strAppendMsg)
{
	var strMsgDesc;
	
	eval("var strMsgDesc = str" + strMsgNumber.toUpperCase());
	
	if (typeof(strAppendMsg) != "undefined")
	{
		strMsgDesc += strAppendMsg;
	}

	$("#divMsgBox DIV.msgBoxText").html(strMsgDesc);
	$("#divMsgBox").jqm({modal:true,overlay:0}).jqmShow();
}

function forceMaxLength(objTxtArea, intMaxLen)
{
	if (objTxtArea.value.length > intMaxLen)
	{
   		objTxtArea.value = objTxtArea.value.substring(0, intMaxLen);
	}
}

function trim(strValue)
{
	var objString = new String(strValue);
	return objString.replace(/(?:(?:^|\n)\s+|\s+(?:$|\n))/g,"");
}

function isValidEmail(strEmail)
{
	var regExpEmail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,4})+$/;	
	return regExpEmail.test(strEmail);
}

function validateForm(objForm)
{
	with (objForm)
	{
		txtName.value = trim(txtName.value);
		txtEmail.value = trim(txtEmail.value);
		txtMessage.value = trim(txtMessage.value);
		
		if ((txtName.value.length == 0) || (txtEmail.value.length == 0) || (txtMessage.value.length == 0))
		{
			displayMessage("MSG001");
			return false;					
		}

		if (!isValidEmail(txtEmail.value))
		{
			displayMessage("MSG002");
			return false;
		}
	}

	return true;
}

function sendEmail()
{	
	if (mBlnFormSubmitted) return;
	
	var objForm = document.getElementById("frmContact");
	
	if (validateForm(objForm))
	{
		var strURL = location.protocol + "//" + location.host + "/sendemail.php";
		
		var strParams = "txtName=" + escape(objForm.txtName.value) + "&txtEmail=" + objForm.txtEmail.value + "&txtMessage=" + escape(objForm.txtMessage.value);
		
		sendHTTPPOST(strURL, strParams, sendEmail_Callback);
		
		mBlnFormSubmitted = true;		
	}
}

function sendEmail_Callback(strReturnMsg)
{
	mBlnFormSubmitted = false;

	if (strReturnMsg == "0")
	{
		displayMessage("MSG000");
		document.getElementById("frmContact").reset();
	}
	else
	{
		displayMessage("MSG100", strReturnMsg);
	}
}