//var ck_businessname = /^[A-Za-z0-9\s!@#$%^&*()_]{3,60}$/;
//var ck_email = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
//var ck_username = /^[A-Za-z0-9_]{3,20}$/;
//var ck_password = /^[A-Za-z0-9!@#$%^&*()_]{6,20}$/;
//var ck_phone = /^[0-9-()\s]{10,17}$/;
//var ck_address = /^[A-Za-z0-9\-\'\s!@#$%^&*()_]{3,55}$/;
//var ck_city = /^[A-Za-z-\'\s!@#$%^&*()_]{3,35}$/;
//var ck_state = /^[A-Za-z-\s]{2,30}$/;
//var ck_zipcode = /^[0-9-\s]{5,11}$/;
//var ck_url = /^http:\/\/www\.[a-z]+\.(com)|(org)|(edu)|(net)$/;
//var ck_reviewlink = /^http:\/\/[a-z]+\.[a-z]+\.(com)|(org)|(edu)|(net)$/;
//var ck_names = /^[A-Za-z\']{3,20}$/;
//var ck_title_tagline = /^[0-9A-Za-z\-\'\s!@#$%^&*()_]{2,65}$/;
//var ck_thankyoumessage = /^[0-9A-Za-z\'\s!@#$%^&*()_]{7,80}$/;
//var ck_contactus_piwik = /^[0-9]{1,4}$/;
//var ck_keyword = /^[0-9A-Za-z\s!@#$%^&*()_]{3,65}$/;
//var ck_weekday = /^[0-9A-Za-z\s\!@#$%^&*()_]{4,35}$/;

var ck_zipcode = /^[0-9-\s]{5,11}$/;
var ck_sname = /^[A-Za-z\'\-\s.]{3,50}$/;
var ck_email = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var ck_TEL = /^[0-9]{10,10}$/;
var ck_EXT = /^[0-9]{0,6}$/;

function validate_form(form){
var SZIP = form.SZIP.value;
var RZIP = form.RZIP.value;
var SNAME = form.SNAME.value;
var EMAIL = trim(form.EMAIL.value);
var STELH = trim(form.STELH.value);
var STELHEXT = trim(form.STELHEXT.value);
var STELO = trim(form.STELO.value);
var DD = form.DD.value;
var MM = form.MM.value;
var YY = form.YY.value;
var ROOMS = form.ROOMS.value;
var CMT = form.CMT.value;
var errors = [];




if (!ck_zipcode.test(SZIP)) {
errors[errors.length] = "Enter Valid Pickup Zip Code";
}

if (!ck_zipcode.test(RZIP)) {
errors[errors.length] = "Enter Valid Delivery Zip Code";
}

if (!ck_sname.test(SNAME)) {
errors[errors.length] = "Enter Your Complete Name";
}

if (!ck_email.test(EMAIL)) {
errors[errors.length] = "Enter Valid E-mail Address";
}

if (!ck_TEL.test(STELH)) {
errors[errors.length] = "Enter Valid Phone Number (10-digits)";
}

if (!STELHEXT.length == 0) {
	if (!ck_EXT.test(STELHEXT)) {
	errors[errors.length] = "Enter Valid Phone Number Extention";
	}
}

if (!STELO.length == 0) {
	if (!ck_TEL.test(STELO)) {
	errors[errors.length] = "Enter Valid 2nd Phone Number (10-digits)";
	}
}





//date check
if( MM == "" || YY == "" || DD == ""){
    errors[errors.length] = "Select Date";
}
else{
    var InputDate = new Date();
    var CurrentDate = new Date();

    InputDate.setDate(DD);
    InputDate.setMonth(fixDate(MM));
    InputDate.setFullYear(YY);

    if(InputDate < CurrentDate){
        errors[errors.length] = "Date entered has already passed"
    }
    else{
    var SixMonthsAheadDateTime = new Date();
    SixMonthsAheadDateTime.setDate(SixMonthsAheadDateTime.getDate()+180);

    if(SixMonthsAheadDateTime < InputDate){
        errors[errors.length] = "We only accept dates that are within 6 months"
    }
    }
}
//end of date check


if (ROOMS == "") {
errors[errors.length] = "Select Number of Rooms";
}



if(CMT.length > 140){
errors[errors.length] = "Too much data in the comment box! Please remove "+
    (CMT.length - 140)+ " characters";
}




if (errors.length > 0) {
reportErrors(errors);
return false;
}
return true;
}


function fixDate(MM){
if(MM == "January"){MM = 0;}
if(MM == "February"){MM = 1;}
if(MM == "March"){MM = 2;}
if(MM == "April"){MM = 3;}
if(MM == "May"){MM = 4;}
if(MM == "June"){MM = 5;}
if(MM == "July"){MM = 6;}
if(MM == "August"){MM = 7;}
if(MM == "September"){MM = 8;}
if(MM == "October"){MM = 9;}
if(MM == "November"){MM = 10;}
if(MM == "December"){MM = 11;}

return MM;
}


function reportErrors(errors){
 var msg = "Please correct the following fields to receive your quote:\n";
 for (var i = 0; i<errors.length; i++) {
  var numError = i + 1;
  msg += "\n" + numError + ". " + errors[i];
 }
 alert(msg);
}


function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}




