﻿
function validateOfferForm(){
	var valid = true;
	var errStr = "";
	<!--- COMMON VALIDATION --->
	if(!isValid('any',document.getElementById("name").value)){
		errStr += "Please enter your full name\n";
		alert(errStr);
		document.getElementById("name").focus();
		return false;
	}else if(!isValid("email", document.getElementById("email").value)){
		errStr += "Please provide a valid email address\n";
		alert(errStr);
		document.getElementById("email").focus();
		return false;	
	}else if(!isValid("telUK", document.getElementById("tel").value) && !isValid("mobileUK", document.getElementById("mobile").value)){
		errStr += "Please provide at least 1 valid contact telephone number\n";
		alert(errStr);
		document.getElementById("tel").focus();
		return false;	
	}else if(!isValid('any',document.getElementById("event").value)){
		errStr += "Please let us know what kind of event you are planning\n";
		alert(errStr);
		document.getElementById("event").focus();
		return false;
	}else if(!isValid("dateEU", document.getElementById("date1").value)){
		errStr += "Please enter your preferred date for the event, either by use the 'date selector' or by entering it in the format dd/mm/yyyy\n";
		alert(errStr);
		document.getElementById("date1").focus();
		return false;		
	}else if(!isValid("number",document.getElementById("partySize").value) || document.getElementById("partySize").value < 6){
		errStr += "Please enter the number of guests  you are planning the event for - minimum of 6\n";
		alert(errStr);
		document.getElementById("partySize").focus();
		return false;cu
	}else if(!isValid("number",document.getElementById("budget").value) || document.getElementById("budget").value < 15) {
		errStr += "Please indicate your approximate budget per person in £'s\n - Minimum £15";
		alert(errStr);
		document.getElementById("budget").focus();
		return false;
	}else if(document.getElementById("acceptTerms").checked == false){
		errStr += "You must acknowledge that you have read and accept out terms and conditions before continuing\n";
		alert(errStr);
		document.getElementById("acceptTerms").focus();
		return false;
	}
	var OK = confirm("Are you sure your event request details are correct?\nClick OK to continue or CANCEL to check your details again.");
	if(OK){
		document.frmOffer.submit();
	}else{
		return false;
	}
}
function isValid(typeOf, str){
	var regx;
	var inputValue = str.replace(/^\s+|\s+$/g, '');
	if(inputValue === '' || inputValue == null){
		return false;
	}else{
		switch(typeOf){
			case "email":
				regx = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/;
				break;
			case "telUK":
				regx = /^\d{11}$/ ;
				break;
			case "mobileUK":
				regx = /^\d{11}$/ ;
				break;
			case "dateEU":
				regx = /^([0-9]){2}(\/|-){1}([0-9]){2}(\/|-){1}([0-9]){4}$/;
				break;
			case "number":
				regx = /[1-9]/;
				break;	
			case "any":
				regx = /./;
				break;
		}
		if(regx.test(inputValue)){ 
			return true;
		}else{
			return false;
		}
	}
}

function isValidEmail(str){
	var regX_email = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if(!regX_email.test(str)){
		return false;
	}else{
		return true;
	}
}
function isValidTel(str){
	var regX_tel = /^([0-9]{11})$/;
	if(!regX_tel.test(str)){
		return false;
	}else{
		return true;
	}
}
//	Trim leading and trailing whitespace
	function LBTrim(str) {
		if(str == null){
			return null;
		}else{
       		return str.replace(/^\s+|\s+$/g, '');
		}
    }

<!--- CHECK FOR EMPTY STRINGS  --->
function notDefined(str){
	var outStr = "";
	var numChrs = str.length;
	var thisChr, i;
	for(i = 0; i < numChrs; i++){
		thisChr = str.charAt(i);
		if(thisChr != " "){
			outStr += thisChr;
		}
	}
	if(outStr == "" || outStr == null || outStr == "undefined"){
		return true;
	}else{
		return false;
	}
}