function validateFormOnSubmit(theForm) {
var reason = "";

  if(theForm.firstname){reason += validateFirstname(theForm.firstname);}
  if(theForm.lastname){reason += validateLastname(theForm.lastname);}
  
  if(theForm.name){reason += validateName(theForm.name);}
  
  if(theForm.password){reason += validatePassword(theForm.password,theForm.confirmpassword);}
  if(theForm.email){reason += validateEmail(theForm.email,theForm.confirmemail);}
  
  if(theForm.hometel){reason += validatePhone(theForm.hometel);}
  if(theForm.worktel){reason += validatePhone(theForm.worktel);}
  if(theForm.mobiletel){reason += validatePhone(theForm.mobiletel);}
      
  if(theForm.dobday){reason += validateDOB(theForm.dobday,theForm.dobmonth,theForm.dobyear);}
  if(theForm.availday){reason += validateAvail(theForm.availday,theForm.availmonth,theForm.availyear);}
        
  if (reason != "") {
    alert("Some fields need correction:\n" + reason);
    return false;
  }

    return true;
}
function validateEmpty(fld) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.background = 'red'; 
        error = "The required field has not been filled in.\n"
    } else {
        fld.style.background = 'White';
    }
    return error;  
}

function validateModel(fld) {
    var error = "";
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
    if (fld.value == "") {
        fld.style.background = 'red'; 
        error = "You didn't enter a Model Number.\n";
    } else if ((fld.value.length < 3) || (fld.value.length > 40)) {
        fld.style.background = 'red'; 
        error = "The Model Number is the wrong length.\n";
    } else if (fld.value.match(illegalChars)) {
       fld.style.background = 'red';
       error = "The Model Number contains illegal characters.\n";      
    } else {
        fld.style.background = 'White';
    }
    return error;
}
function validateFirstname(fld) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.background = 'blue'; 
        error = "You must enter your first name.\n";
    } else {
        fld.style.background = 'White';
    }
    return error;  
}

function validateName(fld) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.background = 'blue'; 
        error = "You must enter your Name.\n";
    } else {
        fld.style.background = 'White';
    }
    return error;  
}

function validateLastname(fld) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.background = 'blue'; 
        error = "You must enter your last name.\n";
    } else {
        fld.style.background = 'White';
    }
    return error;  
}

function validateDOB(fld,fld2,fld3) {
    var error = "";
 
    if (fld.selectedIndex == "0") {
        fld.style.background = 'blue';
        error = "You must enter your date of birth.\n";
    } else if(fld2.selectedIndex == "0") {
        fld2.style.background = 'blue';
        error = "You must enter dob month.\n";
    } else if (fld3.selectedIndex == "0") {
        fld3.style.background = 'blue';
        error = "You must enter dob year.\n";
    } else {
        fld.style.background = 'White';
        fld2.style.background = 'White';
        fld3.style.background = 'White';
    }
    return error;
}

function validateAvail(fld,fld2,fld3) {
    var error = "";
    if (fld.selectedIndex != "0" || fld2.selectedIndex != "0" || fld3.selectedIndex != "0") {
    
    if (fld.selectedIndex == "0") {
        fld.style.background = 'blue';
        error = "You must enter the available from day.\n";
    } else if(fld2.selectedIndex == "0") {
        fld2.style.background = 'blue';
        error = "You must enter the available from month.\n";
    } else if (fld3.selectedIndex == "0") {
        fld3.style.background = 'blue';
        error = "You must enter the available from year.\n";
    } else {
        fld.style.background = 'White';
        fld2.style.background = 'White';
        fld3.style.background = 'White';
    }}
    return error;
}

function validatePassword(fld,fld2) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.background = 'blue'; 
        error = "You must enter a Password.\n"
    	} else if (fld.value.length < 6) {
        	error = "The Password needs to be 6 characters or more.\n";
        	fld.style.background = 'blue';
     } else if (!(fld.value == fld2.value)) {
        fld.style.background = 'blue';
        fld2.style.background = 'blue';
        error = "The Password and Confirm Password do not match.\n";  
    } else {
        fld.style.background = 'White';
        fld2.style.background = 'White';
    }
    return error;  
}
function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
}

function validateEmail(fld,fld2) {
    var error="";
    var tfld = trim(fld.value);                        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (fld.value == "") {
        fld.style.background = 'blue';
        error = "You must enter an Email address.\n";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.background = 'blue';
        error = "Please enter a valid Email address.\n";
    } else if (fld.value.match(illegalChars)) {
        fld.style.background = 'blue';
        error = "The email address contains illegal characters.\n";
     } else if (!(fld.value == fld2.value)) {
        fld.style.background = 'blue';
        fld2.style.background = 'blue';
        error = "The Email and Confirm Email do not match.\n";        
    } else {
        fld.style.background = 'White';
        fld2.style.background = 'White';
    }
    return error;
}

function validatePhone(fld) {
    var error = "";
    var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, '');    

   if (fld.value != "") {
   		 if (isNaN(parseInt(stripped))) {
        	error = "The Phone number contains illegal characters.\n";
        	fld.style.background = 'blue';
    	} else if (stripped.length < 7) {
        	error = "The Phone number is too short.\n";
        	fld.style.background = 'blue';
    	}	 else if (stripped.length > 15) {
        	error = "The Phone number is too long.\n";
        	fld.style.background = 'blue'
        }
    } else {
        fld.style.background = 'White';
    }
    return error;
}


function validatePhone2(fld) {
    var error = "";
    var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, '');    

   if (fld.value != "") {
   		 if (isNaN(parseInt(stripped))) {
        	error = "The Phone number contains illegal characters.\n";
        	fld.style.background = 'red';
    	} else if (stripped.length < 9) {
        	error = "The Phone number 2 is too short.\n";
        	fld.style.background = 'red';
    	}	 else if (stripped.length > 12) {
        	error = "The Phone number 2 is too long.\n";
        	fld.style.background = 'red'
        }
    } else {
        fld.style.background = 'White';
    }
    return error;
}

function validatePic1(fld) {
    var error = "";
	var dot = fld.value.lastIndexOf(".");
	var extension = fld.value.substr(dot,fld.value.length);
	var lower = extension.toLowerCase();
		if (fld.value.length != 0) {
	    if (lower != ".jpg") {
        fld.style.background = 'red'; 
         	
        error = "Please upload a jpg file in Main Picture! \n";
        }} else {
        fld.style.background = 'White';
    }
    return error;  
}

function validatePic2(fld) {
    var error = "";
	var dot = fld.value.lastIndexOf(".");
	var extension = fld.value.substr(dot,fld.value.length);
	var lower = extension.toLowerCase();
		if (fld.value.length != 0) {
	    if (lower != ".jpg") {
        fld.style.background = 'red'; 
         	
        error = "Please upload a jpg file in Second Picture! \n";
        }} else {
        fld.style.background = 'White';
    }
    return error;  
}

function validatePic3(fld) {
    var error = "";
	var dot = fld.value.lastIndexOf(".");
	var extension = fld.value.substr(dot,fld.value.length);
	var lower = extension.toLowerCase();
		if (fld.value.length != 0) {
	    if (lower != ".jpg") {
        fld.style.background = 'red'; 
         	
        error = "Please upload a jpg file in Third Picture! \n";
        }} else {
        fld.style.background = 'White';
    }
    return error;  
}

function validatePic(fld) {
    var error = "";
	var dot = fld.value.lastIndexOf(".");
	var extension = fld.value.substr(dot,fld.value.length);
	var lower = extension.toLowerCase();
		if (fld.value.length != 0) {
	    if (lower != ".jpg") {
        fld.style.background = 'red'; 
         	
        error = "Please upload a jpg file in Logo Picture! \n";
        }} else {
        fld.style.background = 'White';
    }
    return error;  
}



