// custom validation functions

// validates a question graph type selection
function ValidateGraphType(s,e)
{
	qType = document.Form1.LstTypes.value;
	e.IsValid = true;
	if(qType != "TEXT" && qType != "TEXTAREA")
	{
		if(e.Value == "NONE")
		{
			e.IsValid = false;
		}
	}
}

// validates a duplicate question entry
function ValidateDupQuestion(s,e)
{
	e.IsValid = true;
	
	qType = document.Form1.LstTypes.value;
	if(qType == "CHECKBOX")
	{
		isDup = document.Form1.RdoDuplicate[0].checked;
		if(isDup)
		{
			dupQuestion = document.Form1.TxtDupQuestion.value;
			if(dupQuestion.length == 0)
			{
				e.IsValid = false;
			}
		}
	}
}

// validates the email message associated with a survey
function ValidateEmailMessage(s,e)
{
	eChecked = document.Form1.RdoEmail[0].checked;
	emailTxt = document.Form1.TxtEmailMsg.value;
	if(eChecked && emailTxt.length == 0)
	{
		e.IsValid = false;
	}
	else
	{
		e.IsValid = true;
	}
}

// validates that at least one checkbox has been selected
function ValidateCheckBoxes(s,e)
{
	qid = s.qid;
	dup = s.dup;
	checked = false;
	for(i=0; i<document.forms.length; i++){
		frm = document.forms[i];
		for(j=0; j<frm.elements.length && !checked; j++){
			var element = frm.elements[j];
			var elementName = element.name;
			index1 = elementName.indexOf("CHECKBOX");
			if(index1 == 0)
			{
				index2 = elementName.indexOf("cb");
				if(index2 > 0)
				{
					questionID = elementName.substring(8,index2);
					eDup = elementName.substring(elementName.length-dup.length);
					if(questionID == qid && eDup == dup)
					{
						checked = element.checked;
					}
				}
			}
		}
	}
	
	e.IsValid = checked;
}