//*********************************************************************************************************************************

function submitForm(submitPage, nextstep, nCountiesCount)
{
	var pageAction;
	
	if (nextstep == "1a")
	{
		pageAction = submitPage + '#astep1a';
	}
	else if (nextstep == "2")
	{
		pageAction = submitPage+ "?Submit=County" + '#aCounty';
	}
	//else if (nextstep == "3")
	//{
		//pageAction = submitPage + '#astep2';
	//}
	//disableElements('dprecounty', nCountiesCount);
	//document.frmProximitysearch1.action = pageAction;
	//document.frmProximitysearch1.submit();
	
}



//*******************************************************************************************************************************

function isNumeric(sNumber) 
{
	return sNumber == sNumber.replace(/[^\d]*/gi,"");
}

//*******************************************************************************************************************************

function isCity(sCity) 
{

var illegalChars = /\W/;
  // allow only letters, numbers, and underscores
    if (illegalChars.test(sCity)) { 
	return sCity == sCity.replace(/[\(\)\&\%\@\#\$\^\*\!\?\+\-\~\{\}\<\>\,\;\:\\\/\"\[\]]/g,'');
    } 
    else{
    return sCity
    }
}

//*******************************************************************************


function isAlpha(sStr) 
{
	return sStr == sStr.replace(/[^a-z `\-\.']*/gi,"");
}

//*******************************************************************************


function disableElements(radioID, nCountiesCount)
{
   if (radioID == "dstate")
   {
        
	    document.getElementById("staState").disabled = false;
		document.getElementById("NAME").disabled = true;
		document.getElementById("nmeState").disabled = true;
		document.getElementById("cty").disabled = true;
		document.getElementById("ctyState").disabled = true;
		document.getElementById("ctyDistance").disabled = true;
		document.getElementById("zip").disabled = true;
		document.getElementById("zipDistance").disabled = true;
		
		
		document.getElementById("NAME").value='';
		document.getElementById("nmeState").value='';
		document.getElementById("cty").value='';
		document.getElementById("ctyState").value='';
		document.getElementById("ctyDistance").value='';
		document.getElementById("zip").value='';
		document.getElementById("zipDistance").value='';
					
	
		if ((document.getElementById("cntState").value != "") && (nCountiesCount > 0))
		{

		    //document.getElementById("cntCounty").value ='';
		}
		
		document.getElementById("cntState").disabled = true;
		document.getElementById("cntState").value='';
	}

	if (radioID == "dname")
	{
             
	    document.getElementById("NAME").disabled = false;
		document.getElementById("nmeState").disabled = false;
	    document.getElementById("staState").disabled = true;
	 	document.getElementById("cty").disabled = true;
		document.getElementById("ctyState").disabled = true;
		document.getElementById("ctyDistance").disabled = true;
		document.getElementById("zip").disabled = true;
		document.getElementById("zipDistance").disabled = true;
				
		document.getElementById("staState").value='';
		document.getElementById("cty").value='';
		document.getElementById("ctyState").value='';
		document.getElementById("ctyDistance").value='';
		document.getElementById("zip").value='';
		document.getElementById("zipDistance").value='';
				
		if ((document.getElementById("cntState").value != "") && (nCountiesCount > 0))
		{
		    //document.getElementById("cntCounty").value ='';
		}
		
		document.getElementById("cntState").disabled = true;
		document.getElementById("cntState").value='';
		
		
	}
		
	if (radioID == "dcity")
	{
	    document.getElementById("cty").disabled = false;
		document.getElementById("ctyState").disabled = false;
		document.getElementById("ctyDistance").disabled = false;
	    document.getElementById("NAME").disabled = true;
		document.getElementById("nmeState").disabled = true;
	    document.getElementById("staState").disabled = true;
		document.getElementById("zip").disabled = true;
		document.getElementById("zipDistance").disabled = true;
				
		document.getElementById("staState").value='';
		document.getElementById("NAME").value='';
		document.getElementById("nmeState").value='';
		document.getElementById("zip").value='';
		document.getElementById("zipDistance").value='';
				
		if ((document.getElementById("cntState").value != "") && (nCountiesCount > 0))
		{
		   //document.getElementById("cntCounty").value ='';
		}
		
		document.getElementById("cntState").disabled = true;
		document.getElementById("cntState").value='';
	}


	if (radioID == "dzipcode")
	{
        document.getElementById("zip").disabled = false;
		document.getElementById("zipDistance").disabled = false;
	    document.getElementById("NAME").disabled = true;
		document.getElementById("nmeState").disabled = true;
	    document.getElementById("staState").disabled = true;
		document.getElementById("cty").disabled = true;
		document.getElementById("ctyState").disabled = true;
		document.getElementById("ctyDistance").disabled = true;
		
		document.getElementById("staState").value='';
		document.getElementById("cty").value='';
		document.getElementById("ctyState").value='';
		document.getElementById("ctyDistance").value='';
		document.getElementById("NAME").value='';
		document.getElementById("nmeState").value='';
		
		if ((document.getElementById("cntState").value != "") && (nCountiesCount > 0))
		{
		    //document.getElementById("cntCounty").value ='';
		}
		
		document.getElementById("cntState").disabled = true;
		document.getElementById("cntState").value='';
		
	}


	if (radioID == "dcounty")
	{
  
        document.getElementById("cntState").disabled = false;
        document.getElementById("zip").disabled = true;
		document.getElementById("zipDistance").disabled = true;
	    document.getElementById("NAME").disabled = true;
		document.getElementById("nmeState").disabled = true;
	    document.getElementById("staState").disabled = true;
		document.getElementById("ctyState").disabled = true;
		document.getElementById("ctyDistance").disabled = true;
		document.getElementById("cty").disabled = true;
		
		document.getElementById("staState").value='';
		document.getElementById("cty").value='';
		document.getElementById("ctyState").value='';
		document.getElementById("ctyDistance").value='';
		document.getElementById("zip").value='';
		document.getElementById("zipDistance").value='';
		document.getElementById("NAME").value='';
		document.getElementById("nmeState").value='';
		
	}

	if (radioID == "dprecounty")
	{
        document.getElementById("cntState").disabled = false;
        document.getElementById("zip").disabled = true;
		document.getElementById("zipDistance").disabled = true;
	    document.getElementById("NAME").disabled = true;
		document.getElementById("nmeState").disabled = true;
	    document.getElementById("staState").disabled = true;
		document.getElementById("ctyState").disabled = true;
		document.getElementById("ctyDistance").disabled = true;
		document.getElementById("cty").disabled = true;
		
		document.getElementById("staState").value='';
		document.getElementById("cty").value='';
		document.getElementById("ctyState").value='';
		document.getElementById("ctyDistance").value='';
		document.getElementById("zip").value='';
		document.getElementById("zipDistance").value='';
		document.getElementById("NAME").value='';
		document.getElementById("nmeState").value='';
	}
	
	
} 


//*******************************************************************************
function getsub(divId)
{
  
	if (divId == "dname"){
		document.getElementById("dname").style.display = "";
		document.getElementById("dcity").style.display = "none";
		document.getElementById("dzipcode").style.display = "none";
		document.getElementById("dstate").style.display = "none";
		document.getElementById("dcounty").style.display = "none";
	}
		
    else if (divId == "dcity"){
		document.getElementById("dcity").style.display = "";
		document.getElementById("dname").style.display = "none";
		document.getElementById("dzipcode").style.display = "none";
		document.getElementById("dstate").style.display = "none";
		document.getElementById("dcounty").style.display = "none";
	}
		
	else if (divId == "dzipcode"){
		document.getElementById("dzipcode").style.display = "";
		document.getElementById("dname").style.display = "none";
		document.getElementById("dcity").style.display = "none";
		document.getElementById("dstate").style.display = "none";
		document.getElementById("dcounty").style.display = "none";
	}
		
	else if (divId == "dstate"){
		document.getElementById("dstate").style.display = "";
		document.getElementById("dname").style.display = "none";
		document.getElementById("dcity").style.display = "none";
		document.getElementById("dzipcode").style.display = "none";
		document.getElementById("dcounty").style.display = "none";
	}
		
	else if (divId == "dcounty"){
		document.getElementById("dcounty").style.display = "";
		document.getElementById("dname").style.display = "none";
		document.getElementById("dcity").style.display = "none";
		document.getElementById("dzipcode").style.display = "none";
		document.getElementById("dstate").style.display = "none";
		
		
	}
}


//*******************************************************************************
function radioDisplay(divId, nCountiesCount, submitPage, prevClicked)
{
  var sAnchor;
  sAnchor = "";
  disableElements(divId, nCountiesCount);
  getsub(divId);
  focus(divId);
  if (divId == "dcounty")
     {
        var form, value1, value2, tempvalue;

         form = document.getElementById("frmProximitySearch1");
         value1 = form.elements["search_dest"].value;
         value2 = form.elements["dest2"].value;
         form.elements["search_dest"].value = value2;
         form.elements["dest2"].value = value1;
         sAnchor = "#county1";
     }
  
  if (divId !=  "dcounty")
     {  
         var form, value1, value2, value3, value4;
       
         form = document.getElementById("frmProximitySearch1");
         value1 = form.elements["dest2"].value;
         value2 = form.elements["search_dest"].value;
         value3 = form.elements["dest2"].value;
         value4 = form.elements["search_dest"].value;
       
       if (prevClicked == "COUNTY")
          {
            form.elements["search_dest"].value = value1;
            form.elements["dest2"].value = value2;
          }
      
 
        if (value3.indexOf('Step1C') !=-1)
           {
             form.elements["search_dest"].value = value4;
             form.elements["dest2"].value = value3;
           }
        else
           {
             form.elements["search_dest"].value = value3;
             form.elements["dest2"].value = value4;
           } 
      } 
        
     

    
  document.frmProximitySearch1.action = submitPage + sAnchor;
   
 
}


//*******************************************************************************
function switchdestvalue()
{

        var form, value1, value2, tempvalue;

         form = document.getElementById("frmProximitySearch1");
         value1 = form.elements["search_dest"].value;
         value2 = form.elements["dest2"].value;
         form.elements["search_dest"].value = value2;
         form.elements["dest2"].value = value1;

     

 }    

//*******************************************************************************
function focus(divId)
{
  if (divId == "dname")
     {
      document.getElementById("NAME").disabled = false;
      //document.getElementById("NAME").focus();
     }
   else if (divId == "dstate")
     {
      //document.getElementById("staState").focus();
     }     
   else if (divId == "dcounty")
     {
      //document.getElementById("cntState").focus();
     }   
   else if (divId == "dcity")
     {
      //document.getElementById("cty").focus();
     }   
   else if (divId == "dzipcode")
     {
      //document.getElementById("zip").focus();
     }         

}

//*******************************************************************************
function checkform(nCountiesCount, sLanguage)
 {
	//Check if a seach type is selected
	var boolType = false
	var sType, sErrMsg
	sType=""
	sErrMsg=""

	var sError, sErrorN1, sErrorN2, sErrorS2, sErrorS3, sErrorCi1, sErrorCi2, sErrorC2, sErrorZ1, sErrorZ2, sDistance
	
	if (sLanguage == "Spanish"){
		sError= "Seleccione uno de criterios de búsqueda para continuar."
		sErrorN1 = "Ingrese un nombre con al menos 2 caracteres en el campo que dice Nombre.\n"
		sErrorN2= "Ingrese el correcto caracteres A-Z en el campo que dice Nombre.\n"
		sErrorS2="Seleccione un estado de la caja desplegable que dice Estado/Territorio.\n"
		sErrorS3 = "No hay condados asociados con este estado/territorio.\n"
		sErrorCi1= "Ingrese el nombre completo de la ciudad en el campo que dice Ciudad.\n"
		sErrorCi2= "Ingrese el correcto alfa/numérico caracteres que dice Ciudad. \n"
		sErrorC2= "Seleccione un condado de la caja desplegable que dice Condado.\n" 
		sErrorZ1= "Ingrese el código postal en el campo que dice Código postal.\n"
		sErrorZ2= "Ingrese el 5-digitó numérico en el campo que dice Código postal.\n"
		sDistance = "Seleccione la distancia en la caja desplegable que dice Distancia.\n"
	}else {
		sError= "Please select one of the search criteria to continue."
		sErrorN1= "Please enter a name with at least 2 characters in the Name field.\n"
		sErrorN2= "Please enter only characters A-Z in the Name field.\n"
		sErrorS2="Please select a state from the State/Territory drop down box.\n"
		sErrorS3 = "There are no counties associated with this State/Territory. Please select a different state from the State drop down box.\n"
		sErrorCi1= "Please enter the full city name in the City Field. \n"
		sErrorCi2 ="Please enter the correct alpha/numeric characters for City field. \n"
		sErrorC2= "Please select a county from the County drop down box.\n" 
		sErrorZ1= "Please enter a ZIP code in the ZIP Code field.\n"
		sErrorZ2= "Please enter a 5-digit numeric value in the ZIP Code field.\n"
		sDistance = "Please select a distance from the Distance drop down box.\n"
	}
	
		if (document.getElementById("radioName").checked == true)
		   {
			boolType = true
			sType="NAME"
		   }
		if (document.getElementById("radioState").checked == true)
		   {
			boolType = true
			sType="STATE"
		   }
		if (document.getElementById("radioCounty").checked == true)
		   {
			boolType = true
			sType="COUNTY"
		   }
		if (document.getElementById("radioCity").checked == true)
		   {
			boolType = true
			sType="CITY"
		   }	
		if (document.getElementById("radioZIPcode").checked == true)
		   {
			boolType = true	
			sType="ZIPCODE"			
            }
	
	if (boolType == false){
			alert(sError);
		return false;
	}

	
	if (sType=="NAME")
	   {
		if (document.getElementById("NAME").value.length < 2){
			sErrMsg = sErrMsg + sErrorN1
		} 
		if(! isAlpha(document.getElementById("NAME").value)){
				sErrMsg = sErrMsg + sErrorN2
		}
		if (document.getElementById("nmeState").value == ''){
			sErrMsg = sErrMsg + sErrorS2
		}
		disableElements('dname', nCountiesCount);
	}
	
	//City Search
	 if (sType=="CITY")
	   {
		if (document.getElementById("cty").value.length  == ''){
			sErrMsg = sErrMsg + sErrorCi1
		}
		
		if (! isCity(document.getElementById("cty").value)){
				sErrMsg = sErrMsg + sErrorCi2
		}
				
		if (document.getElementById("ctyState").value == ''){
			sErrMsg = sErrMsg + sErrorS2
		}
	
		if (document.getElementById("ctyDistance").value == ''){
			sErrMsg = sErrMsg + sDistance
		}
		disableElements('dcity', nCountiesCount);
	}
	
	//ZIP Code Search
	if (sType=="ZIPCODE")
	   {
		if (document.getElementById("zip").value == ''){
			sErrMsg = sErrMsg + sErrorZ1
		}
		if (document.getElementById("zip").value.length < 5 ||
		isNaN(document.getElementById("zip").value)){
			sErrMsg = sErrMsg + sErrorZ2
		}
		if (document.getElementById("zipDistance").value == ''){
			sErrMsg = sErrMsg + sDistance
		}
		disableElements('dzipcode', nCountiesCount);
	}
	
	//State Search
	if (sType=="STATE")
	   {
		if (document.getElementById("staState").value == ''){
			sErrMsg = sErrMsg + sErrorS2
		}
	    disableElements('dstate', nCountiesCount);	
	}
	
	//County Search
	if (sType=="COUNTY")
	   {
	         
		   if (document.getElementById("cntState").value == '')
		   {
			  sErrMsg = sErrMsg + sErrorS2
		   }
           else if (document.getElementById("cntState").value != "")
		   {
		       
		       if (nCountiesCount > 0)
		       {
		          if (document.getElementById("cntCounty").value == '')
		          {
				     sErrMsg = sErrMsg + sErrorC2
		          }
		       }
			   else
			   {   
			       sErrMsg = sErrMsg + sErrorS3
	           }
           }
        
		disableElements('dcounty', nCountiesCount);	
	  }
	  
  if (sErrMsg.length > 0)
	{
		alert(sErrMsg)
		sErrMsg = "";
		return false;

	}
	else
	{
		return true;
	}
	
}
//********************************************************************************************************************************
function checkformJSonStateValidate(nCountiesCount, sLanguage)
{
var boolType = false
	var sType, sErrMsg
	sType=""
	sErrMsg=""
	
	var sError,sErrorS2
	
	if (sLanguage == "Spanish"){
		sError= "Seleccione uno de criterios de búsqueda para continuar."
		sErrorS2="Seleccione un estado de la caja desplegable que dice Estado/Territorio.\n"
	}else {
		sError= "Please select one of the search criteria to continue."
		sErrorS2=" Please select a state from the State/Territory drop down box.\n"
	}
	
	
		if (document.getElementById("radioName").checked == true)
		   {
			boolType = true
			sType="NAME"
		   }
		
		if (document.getElementById("radioState").checked == true)
		   {
		   
			boolType = true
			sType="STATE"
		   }
		   
		if (document.getElementById("radioCounty").checked == true)
		   {
			boolType = true
			sType="COUNTY"
		   }
			
		if (document.getElementById("radioCity").checked == true)
		   {
			boolType = true
			sType="CITY"
		   }	
		if (document.getElementById("radioZIPcode").checked == true)
		   {
			boolType = true	
			sType="ZIPCODE"			
            }
	
	if (boolType == false){
		alert(sError);
		sErrMsg = "";
		return false;
	}
	
	//County Search
	if (sType=="COUNTY")
	   { 
		   if (document.getElementById("cntState").value == '')
		   {
			  sErrMsg = sErrMsg + sErrorS2
		   }
	  }
	  
	  if (sErrMsg.length > 0)
	{
		alert(sErrMsg)
		sErrMsg = "";
		return false;
	}
	else
	{
		return true;
	}


}

//*******************************************************************************
function checkformJSonCountyValidate(nCountiesCount, sLanguage)
{

var boolType = false
	var sType, sErrMsg
	sType=""
	sErrMsg="";
	
	var sError, sErrorC1, sErrorC2
	
	if (sLanguage == "Spanish"){
		sError= "Seleccione uno de criterios de búsqueda para continuar."
		sErrorC1= "No hay condados asociados con este estado/territorio.\n"
		sErrorC2= "Seleccione un condado de la caja desplegable que dice Condado.\n" 
	}else {
		sError= "Please select one of the search criteria to continue."
		sErrorC1= "There are no counties associated with this State/Territory. Please select a different state from the State drop down box.\n"
		sErrorC2= "Please select a county from the County drop down box.\n" 
	}
	
	
		if (document.getElementById("radioName").checked == true)
			{
			boolType = true
			sType="NAME"
			}
		if (document.getElementById("radioState").checked == true)
		   {
			boolType = true
			sType="STATE"
		   }
		   
		if (document.getElementById("radioCounty").checked == true)
		   {
			boolType = true
			sType="COUNTY"
		   }
			
		if (document.getElementById("radioCity").checked == true)
		   {
			boolType = true
			sType="CITY"
		   }	
		if (document.getElementById("radioZIPcode").checked == true)
		   {
			boolType = true	
			sType="ZIPCODE"			
            }
	
	if (boolType == false){
		alert(sError);
		sErrMsg = "";
		return false;
	}
	
	
	//County Search
	if (sType=="COUNTY")
	   {
	     if (nCountiesCount > 0)
		    {
		      if (document.getElementById("cntCounty").value == '')
		         {
			   	   sErrMsg = sErrMsg + sErrorC2
		         }
		    }
		 else
		    {   
			  sErrMsg = sErrMsg + sErrorC1
	        }
        
        }  
	  
    if (sErrMsg.length > 0)
	{
		alert(sErrMsg)
		sErrMsg = "";
		return false;

	}
	else
	{
		return true;
	}


}

//**************************************************************************************************************************
