
// valiation functions from http://www.w3schools.com/js/js_form_validation.asp

function validate_required(field,alerttxt)
{
  //alert ('in validate_required');
  with (field)
  {
    if (value==null||value=="")
      {alert(alerttxt);return false;}
    else {return true}
  }
}

function validate_email(field,alerttxt)
{
	with (field)
	{
		var apos=value.indexOf("@");
		var dotpos=value.lastIndexOf(".");
		if (apos < 1 || dotpos-apos < 2) 
			{alert(alerttxt);return false;}
		else {return true;}
	}
}

function validate_select(field,alerttxt)
{
	//alert ('in validate_select');
	if (field.options[field.selectedIndex].value == "noselection") 
    {alert(alerttxt);return false;}		
    if (field.options[field.selectedIndex].value == "") 
    {alert(alerttxt);return false;}	
    if (field.options[field.selectedIndex].value == "0") 
    {alert(alerttxt);return false;}	    
	return true;
}

function validate_checkbox(field, alerttxt)
{
	if (field.checked) { return true; }
	else
	{
	  	alert(alerttxt);
		return false;
	}
}

/* validate_radio cant work with a (getElementById) element because it needs 
the collection of elements based on the name */

function validate_radio(elem, alerttxt)
{
  // alert ('in validate radio.');
  var form=elem.form;
  fieldName=elem.name;
  // alert ('in validate radio: fieldName=' + fieldName);
  var inputs = document.getElementsByTagName('input');
  if (inputs) 
  {
    for (var i = 0; i < inputs.length; ++i) 
    {
      if (inputs[i].type == 'radio' && inputs[i].name == fieldName)
        if (inputs[i].checked) { return true; }
    }
  }

  alert(alerttxt);
	return false;
}


function validate_phone(field,alerttxt)
{	
	var phone = field.value;
	  //alert ('in validate_phone with ' + phone);
    var stripped = phone.replace(/[\(\)\.\-\ ]/g, '');
    if ((phone == "") || (isNaN(parseInt(stripped))) || (stripped.length < 10)) 
    {
			{alert(alerttxt);return false;}
    } 		
	return true;
}

function validate_acceptterms(form, field, alerttxt)
{
    var accept='accept_';
    var inputtype='radio';
    var value='';
 		var formfields=document.getElementsByTagName("input");
    // alert ('field=' + field + ' msg=' + alerttxt);
		for (var i=0; i<formfields.length; i++)
		{
			element=formfields[i];
			fieldName=new String (element.name);
			  // alert ("checking " + fieldName);
      if (inputtype==element.getAttribute("type"))
      { 
					if (element.checked) 
					{
						value=element.value;
						// alert ("found checked value of" + value );
					}  
      }
    }
    if (value.indexOf(accept) < 0)
    { 
	      alert(alerttxt);
				return false; 
    } else {
				return true;
    }  
}

