function reviewChanges(){
	//Make sure diocese-name, address, contact person and e-mail are not empty
	if(document.dio_register.contact_name.value.length ==0){
		alert('Enter Contact Name for diocese');
		document.dio_register.contact_name.focus();
		return false;	
	}
	if(document.dio_register.contact_email.value.length ==0){
		alert('Enter Contact E-mail for diocese');
		document.dio_register.contact_email.focus();
		return false;	
	}else if(!validateEmail(document.dio_register.contact_email.value)){
		alert('Diocese contact E-mail not valid');
		document.dio_register.contact_email.focus();
		return false;
	}
	if(document.dio_register.sch_ts_month.value == '-'){
		alert('Enter Survey start month');
		document.dio_register.sch_ts_month.focus();
		return false;	
	}
	if(document.dio_register.sch_ts_date.value == '-'){
		alert('Enter Survey start date');
		document.dio_register.sch_ts_date.focus();
		return false;	
	}
	if(document.dio_register.sch_ts_year.value == '-'){
		alert('Enter Survey start year');
		document.dio_register.sch_ts_year.focus();
		return false;	
	}
	if(document.dio_register.sch_te_month.value == '-'){
		alert('Enter Survey end month');
		document.dio_register.sch_te_month.focus();
		return false;	
	}
	if(document.dio_register.sch_te_date.value == '-'){
		alert('Enter Survey end date');
		document.dio_register.sch_te_date.focus();
		return false;	
	}
	if(document.dio_register.sch_te_year.value == '-'){
		alert('Enter Survey end year');
		document.dio_register.sch_te_year.focus();
		return false;	
	}
	if(!validateDates(parseInt(document.dio_register.sch_ts_month.value),
					  parseInt(document.dio_register.sch_ts_date.value),
					  parseInt(document.dio_register.sch_ts_year.value),
					  parseInt(document.dio_register.sch_te_month.value),
  					  parseInt(document.dio_register.sch_te_date.value),
					  parseInt(document.dio_register.sch_te_year.value))){
		return false;
	}
	// School elements start from element 11
	var i=11;
	var school_name = "";
	var prog_name = "";
	var name_entered = 0;
	while( i < document.dio_register.elements.length){
		//alert('Element' + i + 'is' + document.dio_register.elements[i].name);
		//alert('value length-'+document.dio_register.elements[i].value.length);
		//alert('i%6 is'+ i%6);
		if(document.dio_register.elements[i].name.search(/sch_name/i) != -1){
			//Get the school name and set flag saying school name exists, if it does.
			name_entered = 0;
			school_name ="";
			prog_name="";
			if(document.dio_register.elements[i].value.length > 0){
				//alert('Name entered');
				name_entered = 1;
				school_name= document.dio_register.elements[i].value;							
			}	
		}else if(document.dio_register.elements[i].name.search(/sch_prog_num/i) != -1){
			var selectBox = document.dio_register.elements[i];
			prog_name = selectBox.options[selectBox.selectedIndex].text;
			//alert(prog_name);
		}else if(document.dio_register.elements[i].name.search(/sch_program/i) != -1){
			document.dio_register.elements[i].value = prog_name;
		}else{
				//alert('Name_entered is   '+name_entered);
				//alert('School_name is'+school_name);
				//alert('i is'+i%6);
			// All fields other than Program are required.
			if((name_entered ==1) && (document.dio_register.elements[i].value.length== 0)){
				if(document.dio_register.elements[i].name.search(/sch_street/i) != -1){
					alert('Enter Street address for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_city/i) != -1){
					alert('Enter City for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_state/i) != -1){
					alert('Enter State for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_zip/i) != -1){
					alert('Enter Zip code for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_first_name/i) != -1){
					alert('Enter Contact persons\' first name for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_last_name/i) != -1){
					alert('Enter Contact persons\' last name for school   -'+school_name);
				}else if(document.dio_register.elements[i].name.search(/sch_contact_email/i) != -1){				
					alert('Enter contact e-mail for school   -'+school_name);				
				}else if(document.dio_register.elements[i].name.search(/sch_no_stu/i) != -1){				
					alert('Enter number of test takers for school   -'+school_name);
				}
				document.dio_register.elements[i].focus();
				return false;
			}
			//For State only 2 letters must be entered
			if((name_entered ==1) && (document.dio_register.elements[i].value.length > 2)
			    && (document.dio_register.elements[i].name.search(/sch_state/i) != -1)){
			 	alert('Enter only two letters for State');
			 	document.dio_register.elements[i].focus();
			 	return false;
			 }
			//Validate the number of test takers to make sure a number is entered.
			if((document.dio_register.elements[i].name.search(/sch_no_stu/i) != -1) && 
			   (!validateNumber(document.dio_register.elements[i].value))){
				alert('Survey takers count not valid for school -'+school_name+'\nEnter only numbers.');
				document.dio_register.elements[i].focus();
				return false;
			}
		}
		i++;
	}
	//Get the selected diocese name for display
	getDioceseName();
	document.dio_register.action = "review_changes.jsp";
	return true;
}

function validateEmail(email){
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if(filter.test(email)){
		//alert('matched email');
		return true;
	}else{
		//alert('not matched email');
		return false;
	}
}
//validate numeric fields
function validateNumber(num){
	var charpos = num.search("[^0-9]");
	if(charpos >= 0){
		return false;
	}else{
		return true;
	}
}

function validateDates(ts_mon,ts_date,ts_year,te_mon,te_date,te_year){
	var today = new Date();
	//alert('current Date is'+ today);
	var currentMonth = today.getMonth();
	//returns 0 for Jan so add 1.
	currentMonth = currentMonth + 1;
	//alert('current Month is'+ currentMonth);
	//alert('ts_month '+ ts_mon);
	var currentDate = today.getDate();
	//alert('current Day is'+ currentDate);
	var currentYear = today.getFullYear();
	
	//Compare current date and start date
	if(ts_year == currentYear){
		if(ts_mon == currentMonth){
			if(ts_date < currentDate){
				alert('Survey start date should be greater or equal to todays date');
				document.dio_register.sch_ts_date.focus();
				return false;
			}
		}else if(ts_mon < currentMonth){
			alert('Survey start month should be greater or equal to the current month');	
			document.dio_register.sch_ts_month.focus();				
			return false;
		}
	}
	if(!validateDayOfTheMonth(ts_date,ts_mon,ts_year,1)){
		return false;
	}
	
	//Compare start and end dates
	if(te_year == ts_year){
		if(te_mon == ts_mon){
			if(te_date < ts_date){
				alert('Survey end date should be greater that start date');
				document.dio_register.sch_te_date.focus();
				return false;
			}
		}else if(te_mon < ts_mon){
			alert('Survey end month should be greater or equal to the test start month');					
			document.dio_register.sch_te_month.focus();
			return false;
		}
	}else{//Since we are listing only 5 years starting from current year, te_year can neverbe less than ts_year.
			alert('Survey end year should be greater or equal to test start year');					
			document.dio_register.sch_te_year.focus();
			return false;
	}
	
	if(!validateDayOfTheMonth(te_date,te_mon,te_year,2)){
		return false;
	}
	return true;
}
function validateDayOfTheMonth(date,mon,year,date_type){
	//Check for leap year if month is feb
	if(mon == 2){
		//alert('month is feb');
		//alert(year%4);
		if(year%4 == 0){
			//alert('year is leap');
			if(date <1 || date>29){
				if(date_type == 1){
						alert('Survey start date must be between 1-29 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-29 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}
		}else{
			//alert('year is not leap');
			if(date <1 || date>28){
				if(date_type == 1){
						alert('Survey start date must be between 1-28 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-28 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}
		
		}
	}else if(mon <= 7){
		if(mon%2 ==1){
			if(date<1 || date>31){
				if(date_type == 1){
						alert('Survey start date must be between 1-31 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-31 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}
		}else{
			if(date<1 || date>30){
				if(date_type == 1){
						alert('Survey start date must be between 1-30 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-30 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}			
		}
	}else if(mon > 7){
		if(mon%2 ==0){
			if(date<1 || date>31){
				if(date_type == 1){
						alert('Survey start date must be between 1-31 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-31 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}
		}else{
			if(date<1 || date>30){
				if(date_type == 1){
						alert('Survey start date must be between 1-30 for the selected month');
						document.dio_register.sch_ts_date.focus();
						return false;
				}else if(date_type == 2){
						alert('Survey end date must be between 1-30 for the selected month');
						document.dio_register.sch_te_date.focus();
						return false;
				}
			}			
		}
	}
	return true;
}
//Get the name of the diocese
function getDioceseName(){
	var selectBox = document.forms[0].diocode;
	document.dio_register.dio_name.value= selectBox.options[selectBox.selectedIndex].text;
	//alert(document.dio_register.dio_name.value);
	return;
}

function addSchools(){
	document.dio_register.action = "dio_register.jsp";
	//document.dio_register.submit();
	getDioceseName();
	alert('The number of schools is'+document.dio_register.school_num.value);
	return true;
}
