function step1_Validate(objID){
	var isValid = true;
	var form = document.forms[objID];
	//var dob = new Date( Number( 19 + form.elements['step1:dobYear'].value ), Number( form.elements['step1:dobMonth'].value ),Number( form.elements['step1:dobDay'].value ));	
	
	var mm = form.elements['step1:dobMonth'].value;
	var dd = form.elements['step1:dobDay'].value;
	var yy = form.elements['step1:dobYear'].value;
	isValid = validateAge(mm,dd,yy);
	
	if(isValid==false)
	{
		document.getElementById("step1:dobMonth").focus();
		return isValid;
	}	
			
	return isValid; 
}

function step2_Validate(objID){
	var isValid = true;
	var form = document.forms[objID];
	
	var medQuestion8 = document.getElementById('step2:medQuestion8');
	var medQuestion9 = document.getElementById('step2:medQuestion9');

	var heightInches = document.getElementById('step2:ALHGTI');
	
	
	if(document.getElementById('step2:ALACT').value!="")
	{
		if (document.getElementById('step2:ALACT').value.length<7 || document.getElementById('step2:ALACT').value.length>10 || !isInteger(document.getElementById('step2:ALACT').value)) 
		{
		    alert("Please enter your valid Account Number. (ex. 1234567890)");
		    document.getElementById('step2:ALACT').focus();
		    return false;
		}		
	} 
		
	var mm = form.elements['step2:dobMonth'].value;
	var dd = form.elements['step2:dobDay'].value;
	var yy = form.elements['step2:dobYear'].value;
	isValid = validateAge(mm,dd,yy);
	
	if(isValid==false)
	{
		document.getElementById("step2:dobMonth").focus();
		return isValid;
	}	
		

	if(Number(heightInches.value) > 11){
		heightInches.focus();
		alert("Please enter a value less then 12 inches ");
		isValid = false;
		return isValid;
	}
		
	for(var i=0; isValid && i < medQuestion8.rows.length;i++){
		var rbs = document.getElementsByName('step2:medQuestion8:'+ i +':medQuestion8Answer');
		var checked = false;
		for( var j=0; j < rbs.length; j++){
			if(rbs[j].checked)
				checked = true;
		}
		
		if(!checked){
			rbs[0].focus();
			alert("Please answer question #8 item " + String.fromCharCode(i + 97));
			isValid = false;
			break;
		}		
	}	
	if( isValid == false)
		return isValid;
		
		
	for(var i=0; isValid && i < medQuestion9.rows.length;i++){
		var rbs = document.getElementsByName('step2:medQuestion9:'+ i +':medQuestion9Answer');
		var checked = false;
		for( var j=0; j < rbs.length; j++){
			if(rbs[j].checked)
				checked = true;
		}
		
		if(!checked){
			rbs[0].focus();
			alert("Please answer question #9 item " + String.fromCharCode(i + 97));
			isValid = false;
			break;
		}		
	}	

	return isValid;
}

function medical_Validate(){
	var isValid = true;
	//var form = document.forms[objID];

	var medQuestion8Details = document.getElementById('medical:medQuestion8Details');
	var medQuestion9Details = document.getElementById('medical:medQuestion9Details');

	//question 8
	for(var i=0; isValid && medQuestion8Details != null && i < medQuestion8Details.rows.length;i++){	
		var objID = document.getElementById('medical:medQuestion8Details:'+ i +':id').value	
		var obj = document.getElementById('medical:medQuestion8Details:'+ i +':condition');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Conditions, Details and Number of Attacks for 8" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
		
		obj = document.getElementById('medical:medQuestion8Details:'+ i +':timeLost');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Time Lost from Normal Activities for 8" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}

		obj1 = document.getElementById('medical:medQuestion8Details:'+ i +':recoverTimeMM');
		obj2 = document.getElementById('medical:medQuestion8Details:'+ i +':recoverTimeYYYY');
	 	if(obj1!=null && obj2!=null )
	   	 {
	    	obj1.value = (obj1.value).replace(/ /,"");
	        obj2.value = (obj2.value).replace(/ /,"");
	        
			len = obj1.value.length;         
	
		    if(len == 0 || !isInteger(obj1.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Month(01-12). If there is no recovery date, enter 00");
				obj1.select();
		    	obj1.focus();
		    	return false;
		    }
		    
			len = obj2.value.length;         
	
		    if(len == 0 || !isInteger(obj2.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Year(1900-3000). If there is no recovery date, enter 0000");
				obj2.select();
		    	obj2.focus();
		    	return false;
		    }	    
	 
	  		var mm = Number(obj1.value);  
		    var yyyy = Number(obj2.value);  	   
		    var noRevTime = false;
		    if( mm==0 && yyyy==0) noRevTime = true;
	  		
	    	if( noRevTime == false )
	    	{
	    	
			   if( mm<1 || mm>12)
			    {
			    	alert("Please re-enter a valid Complete Recovery Month(01-12). If there is no recovery date, enter 00 ");
			    	obj1.focus();
			    	return false;
			    }
		 	    if( yyyy<1900 || yyyy>3000)
			    {
			    	alert("Please re-enter a valid Complete Recovery Year(1900-3000). If there is no recovery date, enter 0000");
			    	obj2.focus();
			    	return false;
			    }	 
			}
	    }        				
		
		obj = document.getElementById('medical:medQuestion8Details:'+ i +':physicianInfo');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please enter the Complete Names and Addresses of Physicians and Hospitals for 8" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}									
	} 

//question 9	
	for(var i=0; isValid && medQuestion9Details != null && i < medQuestion9Details.rows.length;i++){
		var objID = document.getElementById('medical:medQuestion9Details:'+ i +':id').value
		var obj = document.getElementById('medical:medQuestion9Details:'+ i +':condition9');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Conditions, Details and Number of Attacks for 9" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
		
		obj = document.getElementById('medical:medQuestion9Details:'+ i +':timeLost9');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Time Lost from Normal Activities for 9" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;		
			return isValid;
		}

	obj1 = document.getElementById('medical:medQuestion9Details:'+ i +':recoverTimeMM9');
	obj2 = document.getElementById('medical:medQuestion9Details:'+ i +':recoverTimeYYYY9');
	
 	if(obj1!=null && obj2!=null )
   	 {
    	obj1.value = (obj1.value).replace(/ /,"");
        obj2.value = (obj2.value).replace(/ /,"");
    
		len = obj1.value.length;         

	    if(len == 0 || !isInteger(obj1.value))
	    {
	    	alert("Please enter a valid Complete Recovery Date Month(01-12). If there is no recovery date, enter 00");
			obj1.select();
	    	obj1.focus();
	    	return false;
	    }
 
		len = obj2.value.length;         

	    if(len == 0 || !isInteger(obj2.value))
	    {
	    	alert("Please enter a valid Complete Recovery Date Year(1900-3000). If there is no recovery date, enter 0000");
			obj2.select();
	    	obj2.focus();
	    	return false;
	    }	    
 
  		var mm = Number(obj1.value);  
	    var yyyy = Number(obj2.value);  	   
	    var noRevTime = false;
	    if( mm==0 && yyyy==0) noRevTime = true;
   		
    	if( noRevTime == false )
    	{
    	
		   if( mm<1 || mm>12)
		    {
		    	alert("Please re-enter a valid Complete Recovery Month(01-12). If there is no recovery date, enter 00 ");
		    	obj1.focus();
		    	return false;
		    }
	 	    if( yyyy<1900 || yyyy>3000)
		    {
		    	alert("Please re-enter a valid Complete Recovery Year(1900-3000). If there is no recovery date, enter 0000");
		    	obj2.focus();
		    	return false;
		    }	 
		}
    }    
		
		obj = document.getElementById('medical:medQuestion9Details:'+ i +':physicianInfo9');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please enter the Complete Names and Addresses of Physicians and Hospitals for 9" + String.fromCharCode((Number(objID) + 97))+". Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}			
	} 

//question10	
	if(document.getElementById('medical:condition10')){
		
		var obj = document.getElementById('medical:condition10');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Conditions, Details and Number of Attacks for 10. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
		
		obj = document.getElementById('medical:timeLost10');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Time Lost from Normal Activities for 10. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}

		obj1 = document.getElementById('medical:recoverTimeMM10');
		obj2 = document.getElementById('medical:recoverTimeYYYY10');
	 	if(obj1!=null && obj2!=null )
	   	 {
	    	obj1.value = (obj1.value).replace(/ /,"");
	        obj2.value = (obj2.value).replace(/ /,"");
	        
			len = obj1.value.length;         
	
		    if(len == 0 || !isInteger(obj1.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Month(01-12). If there is no recovery date, enter 00");
				obj1.select();
		    	obj1.focus();
		    	return false;
		    }
		    
			len = obj2.value.length;         
	
		    if(len == 0 || !isInteger(obj2.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Year(1900-3000). If there is no recovery date, enter 0000");
				obj2.select();
		    	obj2.focus();
		    	return false;
		    }	    
	 
	  		var mm = Number(obj1.value);  
		    var yyyy = Number(obj2.value);  	   
		    var noRevTime = false;
		    if( mm==0 && yyyy==0) noRevTime = true;
	  		
	    	if( noRevTime == false )
	    	{
	    	
			   if( mm<1 || mm>12)
			    {
			    	alert("Please re-enter a valid Complete Recovery Month(01-12). If there is no recovery date, enter 00 ");
			    	obj1.focus();
			    	return false;
			    }
		 	    if( yyyy<1900 || yyyy>3000)
			    {
			    	alert("Please re-enter a valid Complete Recovery Year(1900-3000). If there is no recovery date, enter 0000");
			    	obj2.focus();
			    	return false;
			    }	 
			}
	    }        
		
		obj = document.getElementById('medical:physicianInfo10');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please enter the Complete Names and Addresses of Physicians and Hospitals for 10. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
	}	
	
//question 11	
	if(document.getElementById('medical:condition11')){
		var obj = document.getElementById('medical:condition11');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Conditions, Details and Number of Attacks for 11. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
		
		obj = document.getElementById('medical:timeLost11');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please complete Time Lost from Normal Activities for 11. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}

		obj1 = document.getElementById('medical:recoverTimeMM11');
		obj2 = document.getElementById('medical:recoverTimeYYYY11');
	 	if(obj1!=null && obj2!=null )
	   	 {
	    	obj1.value = (obj1.value).replace(/ /,"");
	        obj2.value = (obj2.value).replace(/ /,"");
	        
			len = obj1.value.length;         
	
		    if(len == 0 || !isInteger(obj1.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Month(01-12). If there is no recovery date, enter 00");
				obj1.select();
		    	obj1.focus();
		    	return false;
		    }
		    
			len = obj2.value.length;         
	
		    if(len == 0 || !isInteger(obj2.value))
		    {
		    	alert("Please enter a valid Complete Recovery Date Year(1900-3000). If there is no recovery date, enter 0000");
				obj2.select();
		    	obj2.focus();
		    	return false;
		    }	    
	 
	  		var mm = Number(obj1.value);  
		    var yyyy = Number(obj2.value);  	   
		    var noRevTime = false;
		    if( mm==0 && yyyy==0) noRevTime = true;
	  		
	    	if( noRevTime == false )
	    	{
	    	
			   if( mm<1 || mm>12)
			    {
			    	alert("Please re-enter a valid Complete Recovery Month(01-12). If there is no recovery date, enter 00 ");
			    	obj1.focus();
			    	return false;
			    }
		 	    if( yyyy<1900 || yyyy>3000)
			    {
			    	alert("Please re-enter a valid Complete Recovery Year(1900-3000). If there is no recovery date, enter 0000");
			    	obj2.focus();
			    	return false;
			    }	 
			}
	    }        
		
		obj = document.getElementById('medical:physicianInfo11');
		if(obj.value == "" || obj.value.length > 254){
			obj.focus();
			alert("Please enter the Complete Names and Addresses of Physicians and Hospitals for 11. Keep answers to less than 254 characters, including spaces.");
			isValid = false;
			return isValid;
		}
	} 

	isValid = true;
	return isValid;
}

function validateAge(dob) {
	var returnVal = true;
	var today = new Date();
	var todayMonth = today.getMonth();
	var todayDate = today.getDate();
	var lastOct = new Date(((today.getMonth() >= 9)?today.getFullYear():today.getFullYear() - 1),9,1);
	var years = new Date(lastOct.getTime() - dob.getTime());
    var base = new Date(0);
    var age = years.getFullYear() - base.getFullYear();
	
	if( age < 44 ){
		alert("We calculate that your age is under 45. Therefore, you are not not currently eligible for GVUL Select coverage at this time.");
		returnVal = false;
	} else if ( age == 44 ) {
		if( todayMonth < 5 ){
			alert("We calculate that your age was under 45. Therefore, you are not not currently eligible for GVUL Select coverage at this time, but can apply on or after 6/1/" + this.getFullYear() + ".");
			returnVal = false;
		}  
	} else if ( age > 79 ){
		alert("We calculate that your age is over 79, as of the October 1 Plan entrance date.  You are not eligible for GVUL Select.");
		returnVal = false;
	}
	
	return returnVal;
}


function popUp(URL) {
	window.open(URL,"NewWindow",'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=450,height=255,left = 175,top = 142.5');
}

var PCPFieldIds = new Array("step2:ADFNAM",
					"step2:ADMNAM",
					"step2:ADLNAM",
					"step2:ADSTR1",
					"step2:ADSTR2",
					"step2:ADCITY",
					"step2:ADSTCD",
					"step2:ADZIPC",
					"step2:ADOCPH_pn1",
					"step2:ADOCPH_pn2",
					"step2:ADOCPH_pn3");

function togglePCP(obj){
	if('y'== obj.value)
		enablePCP();
	else
		disablePCP();
}
function enablePCP(){
	for( var i = 0; i < PCPFieldIds.length; i++){
		document.getElementById(PCPFieldIds[i]).style.backgroundColor = "#FFFFFF";
		document.getElementById(PCPFieldIds[i]).disabled = false;
	}
}
function disablePCP(){
	for( var i = 0; i < PCPFieldIds.length; i++){
		document.getElementById(PCPFieldIds[i]).value = "";
		document.getElementById(PCPFieldIds[i]).disabled = true;
		document.getElementById(PCPFieldIds[i]).style.backgroundColor = "#D4D0C8";
	}

}

function changecountry(element){
	if(element.selectedIndex.value!=""){
		document.getElementById("step2:ALBCNT").selectedIndex=1;
	}
}
function changestate(element){
	if(element.selectedIndex!=1){
		document.getElementById("step2:ALBSTC").selectedIndex=0;
	}
}


//Kevin Young code
function displayage(mm, dd, yy){
//dd = document.getElementById("theform1:dobDay").value;
//mm = document.getElementById("theform1:dobMonth").value;
//yy = 19 + document.getElementById("theform1:dobYear").value;
days = new Date();
gdate = days.getDate();
gmonth = days.getMonth();
gyear = days.getYear();
if (gyear < 2000) gyear += 1900;
	age = gyear - yy;
if ((mm == (gmonth + 1)) && (dd <= parseInt(gdate))) {
	age = age; 
} 
else {
	if (mm <= (gmonth)) {
		age = age;
	} 
	else {
		age = age - 1; 
	}
}
if (age == 0)
	age = age;
return age;
}

//Kevin Young code
function displayageOct(mm, dd, yy){
//dd = document.getElementById("theform1:dobDay").value;
//mm = document.getElementById("theform1:dobMonth").value;
//yy = 19 + document.getElementById("theform1:dobYear").value;
days = new Date();
nowMonth = days.getMonth();
gdate = 1;
gmonth = 9;
gyear = days.getYear();
if(nowMonth>9){
	gyear++;
}
if (gyear < 2000) gyear += 1900;
	age = gyear - yy;
if ((mm == (gmonth + 1)) && (dd <= parseInt(gdate))) {
	age = age; 
} 
else {
	if (mm <= (gmonth)) {
		age = age;
	} 
	else {
		age = age - 1; 
	}
}
if (age == 0)
	age = age;
return age;
}

//Kevin Young code
function validateAge(mm, dd, yy) {
	yy = Number( 19 + yy);

	if(displayage(mm, dd, yy)<44){
		alert("We calculate that your age is under 45, as of the October 1 Plan entrance date. You are not currently eligible for GVUL Select rates at this time.");
		return false;
	}
	if(displayage(mm, dd, yy)==44 && displayageOct(mm, dd, yy)==44){		
		alert("We calculate that your age is under 45, as of the October 1 Plan entrance date. You are not currently eligible for GVUL Select rates at this time. You will be eligible to apply for Select Status on or after June 1 of next year.");
		return false;
	}
	if(displayageOct(mm, dd, yy)>79){
		alert("We calculate that your age is over 79, as of the October 1 Plan entrance date.  You are not eligible for GVUL Select.");
		return false;
	}
	return true; 
}