function demoFormFocus(inputField)
{
	var inputValue = trim(inputField.value);
	var emptyValue = inputField.getAttribute('emptyValue');
	if (inputValue == emptyValue)
	{
		inputField.value = '';
	}
}

function demoFormBlur(inputField)
{
	var inputValue = inputField.value;
	if (!inputValue || inputValue == '' || RE_BLANK.test(inputValue))
	{
		inputField.value = inputField.getAttribute('emptyValue') || '';
	}
}

function validateForm(myForm) 
{
	var reBlank = /\S+/g;
	var reEmail = /^\S+@\S+\.\S+$/;
	var rePhone = /^\d{3}-\d{3}-\d{4}$/;
	var alertMsg = "The following REQUIRED fields\nare invalid:\n";
	
	var fieldsToCheck =
	[
		{label:'Company Name',  id:'company-name', format: reBlank},
		{label:'Your Name',     id:'your-name',    format: reBlank},
		//{label:'Your Phone',    id:'phone',        format: rePhone},
		{label:'Your Email',    id:'email',        format: reEmail}
	];
	
	var firstError = null;
	var hasErrors = false;
	for (var i = 0; i < fieldsToCheck.length; i++)
	{
		var myField = fieldsToCheck[i];
		var inputField = document.getElementById(myField.id);
		
		if (inputField)
		{
			var fieldValue = inputField.value || '';
			var emptyValue = inputField.getAttribute('emptyValue');
			removeStyleName(inputField, 'input-error');
			
			if (fieldValue == '' || trim(fieldValue) == emptyValue || !fieldValue.match(myField.format))
			{
				alertMsg += '\n' + myField.label;
				addStyleName(inputField, 'input-error');
				hasErrors = true;
				firstError = firstError || inputField;
			}
		}
	}
		
	if (hasErrors)
	{
		alert(alertMsg);
		firstError.focus();
		return false;
	}
	
	var commentsField = document.getElementById('comments');
	if (commentsField)
	{
		if (trim(commentsField.value) == commentsField.getAttribute('emptyValue'))
		{
			// if they didn't put any comments, remove the comments:
			commentsField.value = '';
		}
	}
	
	myForm.submit();
	return true;
}
 

