function update_and_validate() {
	var f = document.Form1;
	var returnval = true;
	if (document.Form1.name.value == '') {
		alert('Please enter your full name');
		document.Form1.name.focus();
		returnval = false;
	} else if (Emailvalidate(document.Form1.email.value) == false) {
		document.Form1.email.focus();
		returnval = false; 
	} else if (Phonevalidate(document.Form1.phone.value, document.Form1.phone2.value) == false) {
		returnval = false;
	} else if (date_validate()==false) {
		
		f.day.focus();
		returnval = false;
	} else if (zipvalidate(f.zip_from.value)==false) {
		alert('Please choose correct zip code');
		f.zip_from.focus();
		returnval = false;
	} else if (zipvalidate(f.zip_to.value)==false) {
		alert('Please choose correct zip code');
		f.zip_to.focus();
		returnval = false;
	} else if (document.Form1.aptsize.value == '') {
		alert('Please select move size');
		document.Form1.aptsize.focus();
		returnval = false;
	} 
	return returnval; 

}

function date_validate() {
	var f = document.Form1;
	if(f.month.selectedIndex == ''){
		var mon = f.month.selectedIndex;
	}else{
		var mon = f.month.value;
	}
	if(f.day.selectedIndex == ''){
		var day = f.day.selectedIndex;
	}else{
		var day = f.day.value;
	}
	var year = f.year.value;

 var DD = day;
 var MM = mon;
 var YY = year;
	
	if( MM == "" || YY == "" || DD == ""){
    alert('Please Select a Date');
    return false;
}


    var InputDate = new Date();
    var CurrentDate = new Date();


    InputDate.setDate(DD);
    InputDate.setMonth(MM-1);
    InputDate.setFullYear(YY);

    if(InputDate < CurrentDate){
        alert('date entered has already passed');
        return false;        
    }
    else{
    var SixMonthsAheadDateTime = new Date();
    SixMonthsAheadDateTime.setDate(SixMonthsAheadDateTime.getDate()+180);

    if(SixMonthsAheadDateTime < InputDate){
        alert('we only accept dates that are within 6 months');
        return false;
    }
    }
}

function zipvalidate(zip) {
	var zippattern = new RegExp("^[0-9]{5}$")
	if (zippattern.exec(zip) == null)
		return false;
	return true;
}

function Emailvalidate(email) {
	var returnval = true;
	
	if (email=='') {
		alert('Your email address is a required field. Please fill it in');
		returnval = false;
	
	} 	else {
		var strEmail = new String(email);
		
		if ((strEmail.indexOf("@")==-1) || (strEmail.indexOf(".")==-1)) {
		alert('Please enter valid email address');
		returnval = false;
		}
	} 
	
	return returnval ;
}

function PhoneNumberVal (num) {

	var returnval = false;
	var countDigits=0;
	var i;
	
	if (num==0) {
		returnval=true;
	}
	else
	{
		for(i=0; i<num.length; i++) {
			if (IsDigit(num.charAt(i))) {
			countDigits++;
			}
		}

		if (countDigits==10) {
		returnval=true;
		}
	}
	return returnval;
}

function IsDigit (val) {

	var returnval = false;

	if (val=='0'||val=='1'||val=='2'||val=='3'||val=='4'||val=='5'||val=='6'||val=='7'||val=='8'||val=='9') {
		returnval = true;
	}

	return returnval;
}


function Phonevalidate(home, work) {
	
	var returnval = true;
	
	if ((home=='')&&(work=='')) {
		alert('Please enter at least one of your phone numbers');
		document.Form1.phone.focus();
		returnval = false;
	} else 
	{
		if (PhoneNumberVal(home)==false) {
			alert('The home number you entered is not valid (10-digit number required)');
			document.Form1.phone.focus();
			returnval = false;
			}
		if (PhoneNumberVal(work)==false) {
			alert('The work number you entered is not valid (10-digit number required)');
			document.Form1.phone2.focus();
			returnval = false;
			}
	}

	return returnval ;
}

