function ToggleSuccessfulInquiryMessage()
{
	var SuccessfulInquiryMessage = document.getElementById('SuccessfulInquiryMessage');
	var ContactUsForm = document.getElementById('ContactUsForm');

	SuccessfulInquiryMessage.className = SuccessfulInquiryMessage.className.replace('hideOnLoad', '');
	
	ContactUsForm.style.display = 'none';

	var agencyId = window.QueryString["agencyId"];
	var agency = document.AgencyList.GetAgency(agencyId);
	var successMessageAgencyName = document.getElementById('SuccessMessageAgencyName');
	successMessageAgencyName.innerHTML = agency.Name;
}


function TextInput_Focus()
{
	this.select();
}


function TextInput_Blur()
{
	if (this.value.length == 0 && this.originalValue && typeof (this.originalValue) == "string")
		this.value = this.originalValue; 
}


function GetTextInputs()
{
	var textInputs = new Array();

	var textareas = document.getElementsByTagName('textarea');
	for (var i = 0; i < textareas.length; i++)
	{
		textInputs.push(textareas[i]);
	}

	// only add text/password input fields that aren't marked readonly
	var inputs = document.getElementsByTagName('input');
	var numInputs = inputs.length;
	var re_InputToAddHandlerTo = /(text|password)/i;
	for (var i = 0; i < numInputs; i++)
	{
		var curInput = inputs[i];
		if (re_InputToAddHandlerTo.test(curInput.type) && !curInput.getAttribute('readonly'))
		{
			textInputs.push(curInput);
		}
	}

	return textInputs; 
}


function SetupEventHandlers()
{
	document.forms[0].onsubmit = ContactUsForm_Submit;

	// Assign the TextInput_Click handler to all text input fields
	var textInputs = GetTextInputs();
	var numTextInputs = textInputs.length;
	for (var i = 0; i < numTextInputs; i++)
	{
		var curInput = textInputs[i];
//		curInput.originalValue = curInput.value;
		curInput.onfocus = TextInput_Focus;
		curInput.onblur = TextInput_Blur;
	}
}


function IsValidForm()
{
	var errorFields = new Array();

	// Validate Name
	var name = document.getElementById('Name').value;
	if (name.length == 0 || name == "Enter your name")
		errorFields[errorFields.length] = 'Name';
	
	// Validate Town (if necessary)
	var doValidateTown = document.getElementById('TownSelector').style.display != 'none';
	if (doValidateTown && document.getElementById('CityDropDown').selectedIndex == 0)
		errorFields[errorFields.length] = 'Town';

	// Validate Phone (if necessary)
	var phone = document.getElementById('Phone').value;
	var phoneRadioButton = document.getElementById('ContactPreference_Phone');
	var re_ValidUSAPhone = /^\(*\d{3}[-).]*[ ]*\d{3}[-. ]*\d{4}$/;
	if (phoneRadioButton.checked && !re_ValidUSAPhone.test(phone))
		errorFields[errorFields.length] = "Phone: Enter the phone number with area code in the format ###&#8211;###&#8211;####";

	// Validate Email (if necessary)
	var email = document.getElementById('Email').value;
	var emailRadioButton = document.getElementById('ContactPreference_Email');
	var re_BasicEmailValidation = /^.+@.+\..{2,}$/;
	if (emailRadioButton.checked && !re_BasicEmailValidation.test(email))
		errorFields[errorFields.length] = "Email: Enter a valid email address";

	if (errorFields.length > 0)
	{
		ShowValidationSummary(errorFields);
		return false;
	}

	return true;
}


function ResetValidationSummary()
{
	var summary = document.getElementById('ContactUsFormValidationSummary');
	if( summary )
		summary.style.display = 'none'; // Hide the summary.

	// Remove the error fields list.
	var errorFieldsList = document.getElementById('ErrorFieldsList');
	if( errorFieldsList )
		errorFieldsList.parentNode.removeChild(errorFieldsList);
}


function ShowValidationSummary( errorFieldsArray )
{
	var summary = document.getElementById('ContactUsFormValidationSummary');

	var ul = document.createElement('ul');
	ul.id = 'ErrorFieldsList';

	var numErrorFields = errorFieldsArray.length;
	for (var i = 0; i < numErrorFields; i++)
	{
		var li = document.createElement('li');
		li.innerHTML = errorFieldsArray[i];
		ul.appendChild(li);
	}

	document.getElementById('ErrorFieldsPlaceHolder').appendChild(ul);
	summary.style.display = 'block';
}


function ContactUsForm_Submit()
{
	return true;
//	ResetValidationSummary();
//	return IsValidForm(); 
}


function Contact_Us_Page_Load()
{
	SetupEventHandlers();
}

//=========================================================

window.PageLoadEvents.Add(Contact_Us_Page_Load);
