<!--
var form
var err

function validate()
{
	form = validate.arguments[0]
	for (i=0;i<form.elements.length;i++)
	{
		el = form.elements[i]
		if (el.name.indexOf('[')<0 && eval("form.check_" + el.name))
		{
			if (el.type.search(/text|texarea|password/)>-1)
			{
				if (!el.value) {alertError(el); return}
				else
				{
					if (el.name.search(/card_?number/i)>-1 && !checkCreditCard(el.value)) return alertError(el)
					if (el.name.search(/social_?security/i)>-1 && el.value.search(/^\d{3}\-?\d{2}\-?\d{4}$/)<0) return alertError(el)
					if (el.name.search(/email/i)>-1 && el.value && el.value.search(/^\w[\w.-]*@\w[\w.-]*\.\w{2,7}$/)<0) return alertError(el)
					if (el.name.search(/phone/)>-1 && el.value.search(/^(1[\ \-\.]?)?(\(?\d{3}\)?([\ \.-])?)?\d{3}([\ \.-])?\d{4}(\ )?(x|ext(\.)?(\ )?\d{1,7})?$/)<0) return alertError(el)
					if (el.name.search(/zip_?code/i)>-1 && el.value.search(/^\d{5}(\-\d{4})?$/)<0) return alertError(el)
					if (eval("form.nospecial_" + el.name) && el.value.search(/\W/)>-1) return alertError(el,"nospecial")
					if (eval("form.verify_" + el.name) && el.value != eval("form.Verify" + el.name + ".value")) return alertError(el,"verify")
				}
			}
			if (el.type=="select-one" && el.selectedIndex==0) return alertError(el);
			if (el.type=="radio" && !checkRadio(el.name)) return alertError(el);
			if (el.type=="checkbox" && !el.checked) return alertError(el);
		}
	}
	if (validate.arguments[1]) return true
	else form.submit()
	
}

function alertError()
{
	args = alertError.arguments
	el = args[0]
	if (el.type.search(/text|texarea|password/)>-1)
	{
		if (!el.value) err = "Please enter" + eval("form.check_" + el.name + ".value") + "."
		else if (!args[1]) err = "Please verify " + eval("form.check_" + el.name + ".value") + "."
		else
		{
			if (args[1]=="nospecial") err = "Please" + eval("form.nospecial_" + el.name + ".value") + "."
			else if (args[1]=="verify")
			{
				verifyel = eval("form.Verify" + el.name)
				if (!verifyel.value) err = "Please retype" + eval("form.verify_" + el.name + ".value") + " again for verification"
				else err = el.name + " verification failed. Please try again."
				el = verifyel
			}
		}
	}	
	else if (el.type=="select-one") err = "Please select" + eval("form.check_" + el.name + ".value") + " from the pull-down menu."
	else if (el.type=="radio" || el.type=="checkbox") err = "Please check" + eval("form.check_" + el.name + ".value") + "."
	alert(err)
	err = null
	el.focus()
	if (el.type.search(/text|texarea|password/)>-1) el.select()
	return
}

function checkRadio(set)
{
	set = eval('form.'+set)
	if (set.length) for (j=0; j < set.length; j++)
	{
		if (set[j].checked) return true
	}
	else if (set.checked) return true
	else return false
}

//-->