function eqFormValidation()
{
	var isInvalid = false;

	if (eqForm_ControlsToValidate) 
	{
		for (var i = 0; i < eqForm_ControlsToValidate.length; i++)
		{
			var elementId = eqForm_ControlsToValidate[i];
			var el = document.getElementById(elementId);
			
			if (el && el.type != "radio")
			{
				switch (el.tagName.toLowerCase())
				{
					case "input": 
						if (el.type == "text")
						{
							if (el.value.length == 0)
							{
								isInvalid = true;
								ShowValidator(elementId);
							}
						}
						break;
					case "textarea":
						if (el.value.length == 0)
						{
							isInvalid = true;
							ShowValidator(elementId);
						}
						break;
					case "select":
						if (el.selectedIndex == -1)
						{
							isInvalid = true;
							ShowValidator(elementId);
						}
						break;
				}
			}
			else
			{
				var optionElements = document.getElementsByName(elementId);
				var isOptionSelected = false;
				
				for (var j = 0; j < optionElements.length; j++)
				{
					el = optionElements[j];
					if (el.tagName.toLowerCase() == "input" && el.type == "radio")
					{
						if (el.checked)
						{
							isOptionSelected = true;
							break;
						}
					}
				}
				
				if (!isOptionSelected)
				{
					isInvalid = true;
					ShowValidator(elementId, true);
				}
			}
		}
	}
	
	return !isInvalid;
}

function ShowValidator(elementId, byName)
{
	if (byName)
	{
		var elements = document.getElementsByName(elementId);
		for (var i = 0; i < elements.length; i++)
		{
			el = elements[i];
			ShowValidatorElements(el, elementId);
		}
	}
	else
	{
		var el = document.getElementById(elementId);
		ShowValidatorElement(el, elementId);
	}
}	

function ShowValidatorElement(el, elementId)
{
	var validator = document.getElementById("val" + elementId);
	if (validator && el)
	{
		validator.style.visibility = "visible";
		el.onblur = new Function("HideValidator('" + elementId + "');")
	}
}

function ShowValidatorElements(el, elementId)
{
	var validator = document.getElementById("val" + el.id);
	if (validator && el)
	{
		validator.style.visibility = "visible";
		el.onblur = new Function("HideValidators('" + elementId + "');")
	}
}

function HideValidator(elementId)
{
	var el = document.getElementById(elementId);
	var validator = document.getElementById("val" + elementId);
	if (validator && el)
	{
		validator.style.visibility = "hidden";
		el.onblur = null;
	}
}

function HideValidators(elementId)
{
	var elements = document.getElementsByName(elementId);
	if (elements)
	{
		for (var i = 0; i < elements.length; i++)
		{
			var validator = document.getElementById("val" + elements[i].id);
			validator.style.visibility = "hidden";
			elements[i].onblur = null;
		}
	}
}

