// Used to receive reply back from the server
var statMessage = [];
var XMLHttpRequestObject = false; 

// Gett new XMLHttpRequest object depending on if browser is IE or other
if (window.XMLHttpRequest) 
{
	// Other type browser such as FireFox, Netscape and others
	XMLHttpRequestObject = new XMLHttpRequest();
} 
else if (window.ActiveXObject) 
{
	// It is a Microsoft browser
	XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}

function SendMessage(msgXML)
{
	var url = "phpCode/ContactUs/ContactUsFunction.php";

	if(XMLHttpRequestObject) 
	{
		// Open a connection to the server using the POST method
		XMLHttpRequestObject.open("POST", url); 
		// Send data to the server in plain text format.
		XMLHttpRequestObject.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
		// Set up event for when the server sends back a responce
		XMLHttpRequestObject.onreadystatechange = function() 
		{ 
			// Check to see if we have a valid responce
			if (XMLHttpRequestObject.readyState == 4 && 
				XMLHttpRequestObject.status == 200) 
			{
				// Get the responce from the server
				var xmlDocument = XMLHttpRequestObject.responseXML;
				statMessage = xmlDocument.getElementsByTagName("statusMsg");
				// Call the display function to show the reply from the server
				DisplayMessage( );
			} 
		} 
		// Send the message to the server
		XMLHttpRequestObject.send(msgXML); 
	}
}

function DisplayMessage( )
{
	var selectControl = document.getElementById('status');
    var styles = document.styleSheets[0];

    selectControl.innerHTML = 'Status Message: ' + statMessage[1].firstChild.data;
	
	if( statMessage[0].firstChild.data == 0 )
	{
		selectControl.style.color = "#D54D00";
	}
	else
	{
		selectControl.style.color = "#22B000";
	}
}

// Verify the Send E-mail Form
function formVerify()
{
	// Get a reference to the label control to set update messages
    var selectControl = document.getElementById('status');
	// Reset current status message
	selectControl.innerHTML = 'Status Message: ' + "Ready.";
	selectControl.style.color = "#000000";
	
	// The field=value pair to be sent to the server
	var HOAPresident = "";
	var WebMaster = "";
	var PCMgrs = "";
	var Name = "";
	var Owner = "";
	var Renter = "";
	var EmailAdd = "";
	var Subject = "";
	var Message = "";
	// Used to hold validation info during validation
	var msg = "";
	// Get a collection of input controls to use in validating check box and 
	// radio buttons on the form.
	var elem = document.getElementsByTagName("INPUT");
	// Use to count the number of check boxes and radio buttons selectred
	var checkCb = 0;
	var radioBtn = 0;
	// Validate the check boxes and radio buttons
	for( var idx = 0; idx < elem.length; idx++ )
	{
		// Is it a check box
		if (elem[idx].type.toLowerCase() == "checkbox")
		{
			if (elem[idx].checked)
			{
				checkCb++;
				if( elem[idx].id == "HOAPresident" ) HOAPresident = "HOAPresident";
				if( elem[idx].id == "WebMaster" ) WebMaster = "WebMaster";
				if( elem[idx].id == "PCMgrs" ) PCMgrs = "PCMgrs";
			}
		}
		else
		{
			// Is it a radio button
			if (elem[idx].type.toLowerCase() == "radio")
			{
				if (elem[idx].checked)
				{
					radioBtn++;
					if( elem[idx].id == "Owner" ) Owner = "Owner";
					if( elem[idx].id == "Renter" ) Renter = "Renter";
				}
			}
		}
	}

	// If checkCb or radioBtn is zero then not all options were selected
	if( checkCb == 0 )
	{
		msg += "You must select 1 or more recipients for this message\n\n";
	}

	if( radioBtn == 0 )
	{
		msg += "You must select either owner or renter.\n\n";
	}

	// Get the data from the form to be sent to the server
	Name = document.getElementById("NameID").value;
	EmailAdd = document.getElementById("EmailAddID").value;
	Subject = document.getElementById("SubjectID").value;
	Message = document.getElementById("MessageID").value;
	
	// Check to make sure that the following fields have data
	if(	Name == "" || EmailAdd == "" || Subject == "" || Message == "")
		msg += "All fields on the form are required.\n\n";

	// Check to see if the form passed validation if not post error and
	// return to the form
	if(msg != "")
	{
		selectControl.innerHTML = 'Status Message: ' + "Please fill in all fields.";
		selectControl.style.color = "#FF0000";
		return false;
	}
	else
	{
		// Form validated OK prepare the fields=value pair to send to the server
		var email = "HOAPresident=" + HOAPresident + "&";
		email += "WebMaster=" + WebMaster + "&";
		email += "PCMgrs=" + PCMgrs + "&";
		email += "Name=" + Name + "&";
		email += "Owner=" + Owner + "&";
		email += "Renter=" + Renter + "&";
		email += "EmailAdd=" + EmailAdd + "&";
		email += "Subject=" + Subject + "&";
		email += "Message=" + Message;
		// Call the send message function to send the data
		SendMessage(email);
		return true;
	}			
}
