//Commercial Quote
function valcQuote(myfrm) {	
	var validd = true;
	var strr = "";
	// Declaring required variables
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 6;
	
	function isInteger(s) {   
		var i;
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character is number.
			var c = s.charAt(i);
			if (((c < "0") || (c > "9"))) return false;
		}
		// All characters are numbers.
		return true;
	}
	
	function stripCharsInBag(s, bag) {   
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not in bag, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (bag.indexOf(c) == -1) returnString += c;
		}
		return returnString;
	}
	
	function checkInternationalPhone(strPhone) {
		s=stripCharsInBag(strPhone,validWorldPhoneChars);
		return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
	}
	
	//check name is non-blank	
	if (myfrm.etype.value == "na") {
		validd = false;
		strr = strr + "Please select an Enquiry type\n";
		myfrm.etype.focus();
	}
	else if (myfrm.txtbusname.value == "") {
		validd = false;
		strr = strr + "Please enter your Business name\n";
		myfrm.txtbusname.focus();
	}		
	else if (myfrm.txtname.value == "") {
		validd = false;
		strr = strr + "Please enter a Contact name\n";
		myfrm.txtname.focus();
	}	
	else if (myfrm.txtphone.value == "") {
		validd = false;
		strr = strr + "Please enter a Phone number\n";
		myfrm.txtphone.focus();
	}	
	else if (checkInternationalPhone(myfrm.txtphone.value)==false) {
		validd = false;
		strr = strr + "Contact number is invalid.\nPlease try again\n";
		myfrm.txtphone.value="";
		myfrm.txtphone.focus();
	}
	else if (myfrm.txtemail.value == "") {
		validd = false;
		strr = strr + "Please enter an Email address\n";
		myfrm.txtemail.focus();
	}	
	else if ((myfrm.txtemail.value != "") && ((myfrm.txtemail.value.indexOf("@") == -1) || (myfrm.txtemail.value.indexOf(".") == -1))) {
		validd = false;
		strr = strr + "E-mail address is invalid.\nPlease try again\n";
		myfrm.txtemail.value = "";
		myfrm.txtemail.focus();
	}		
	else if ((myfrm.txtmob.value != "") && (checkInternationalPhone(myfrm.txtmob.value)==false)) {
		validd = false;
		strr = strr + "Mobile number is invalid.\nPlease try again\n";
		myfrm.txtmob.value="";
		myfrm.txtmob.focus();
	}
	else if (myfrm.txtsuburb.value == "") {
		validd = false;
		strr = strr + "Please enter your Suburb\n";
		myfrm.txtsuburb.focus();
	}
	else if (myfrm.txtreq.value == "") {
		validd = false;
		strr = strr + "Please enter Requirement(s)\n";
		myfrm.txtreq.focus();
	}	
	//display result of check
	if (!validd){
		alert(strr);
		return validd;
	}
	else return validd;
}

//Commercial Booking
function valcBooking(myfrm) {	
	var validd = true;
	var strr = "";
	// Declaring required variables
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 6;
	
	function isInteger(s) {   
		var i;
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character is number.
			var c = s.charAt(i);
			if (((c < "0") || (c > "9"))) return false;
		}
		// All characters are numbers.
		return true;
	}
	
	function stripCharsInBag(s, bag) {   
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not in bag, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (bag.indexOf(c) == -1) returnString += c;
		}
		return returnString;
	}
	
	function checkInternationalPhone(strPhone) {
		s=stripCharsInBag(strPhone,validWorldPhoneChars);
		return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
	}
	
	
	//check name is non-blank	
	if (myfrm.etype.value == "na") {
		validd = false;
		strr = strr + "Please select an Enquiry type\n";
		myfrm.etype.focus();
	}
	else if (myfrm.txtbusname.value == "") {
		validd = false;
		strr = strr + "Please enter your Business name\n";
		myfrm.txtbusname.focus();
	}		
	else if (myfrm.txtname.value == "") {
		validd = false;
		strr = strr + "Please enter a Contact name\n";
		myfrm.txtname.focus();
	}	
	else if (myfrm.txtphone.value == "") {
		validd = false;
		strr = strr + "Please enter a Phone number\n";
		myfrm.txtphone.focus();
	}	
	else if (checkInternationalPhone(myfrm.txtphone.value)==false) {
		validd = false;
		strr = strr + "Contact number is invalid.\nPlease try again\n";
		myfrm.txtphone.value="";
		myfrm.txtphone.focus();
	}
	else if (myfrm.txtaddr.value == "") {
		validd = false;
		strr = strr + "Please enter your Address\n";
		myfrm.txtaddr.focus();
	}	
	else if (myfrm.txtreq.value == "") {
		validd = false;
		strr = strr + "Please enter Requirement(s)\n";
		myfrm.txtreq.focus();
	}
	else if (myfrm.txtpayment.value == "") {
		validd = false;
		strr = strr + "Please enter a Payment method\n";
		myfrm.txtpayment.focus();
	}
	//display result of check
	if (!validd){
		alert(strr);
		return validd;
	}
	else return validd;
}

//Domestic Quote
function valdQuote(myfrm) {	
	var validd = true;
	var strr = "";
	// Declaring required variables
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 6;
	
	function isInteger(s) {   
		var i;
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character is number.
			var c = s.charAt(i);
			if (((c < "0") || (c > "9"))) return false;
		}
		// All characters are numbers.
		return true;
	}
	
	function stripCharsInBag(s, bag) {   
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not in bag, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (bag.indexOf(c) == -1) returnString += c;
		}
		return returnString;
	}
	
	function checkInternationalPhone(strPhone) {
		s=stripCharsInBag(strPhone,validWorldPhoneChars);
		return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
	}
	
	
		//check name is non-blank	
	if (myfrm.etype.value == "na") {
		validd = false;
		strr = strr + "Please select an Enquiry type\n";
		myfrm.etype.focus();
	}		
	else if (myfrm.txtname.value == "") {
		validd = false;
		strr = strr + "Please enter a Contact name\n";
		myfrm.txtname.focus();
	}	
	else if (myfrm.txtphone.value == "") {
		validd = false;
		strr = strr + "Please enter a Phone number\n";
		myfrm.txtphone.focus();
	}	
	else if (checkInternationalPhone(myfrm.txtphone.value)==false) {
		validd = false;
		strr = strr + "Contact number is invalid.\nPlease try again\n";
		myfrm.txtphone.value="";
		myfrm.txtphone.focus();
	}
	else if (myfrm.txtaddr.value == "") {
		validd = false;
		strr = strr + "Please enter your Address\n";
		myfrm.txtaddr.focus();
	}
	else if (myfrm.txtreq.value == "") {
		validd = false;
		strr = strr + "Please enter Requirement(s)\n";
		myfrm.txtreq.focus();
	}
	//display result of check
	if (!validd){
		alert(strr);
		return validd;
	}
	else return validd;
}

//Domestic Booking
function valdBooking(myfrm) {	
	var validd = true;
	var strr = "";
	// Declaring required variables
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 6;
	
	function isInteger(s) {   
		var i;
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character is number.
			var c = s.charAt(i);
			if (((c < "0") || (c > "9"))) return false;
		}
		// All characters are numbers.
		return true;
	}
	
	function stripCharsInBag(s, bag) {   
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not in bag, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (bag.indexOf(c) == -1) returnString += c;
		}
		return returnString;
	}
	
	function checkInternationalPhone(strPhone) {
		s=stripCharsInBag(strPhone,validWorldPhoneChars);
		return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
	}
	
	
	//check name is non-blank	
	if (myfrm.etype.value == "na") {
		validd = false;
		strr = strr + "Please select an Enquiry type\n";
		myfrm.etype.focus();
	}		
	else if (myfrm.txtname.value == "") {
		validd = false;
		strr = strr + "Please enter a Contact name\n";
		myfrm.txtname.focus();
	}	
	else if (myfrm.txtphone.value == "") {
		validd = false;
		strr = strr + "Please enter a Phone number\n";
		myfrm.txtphone.focus();
	}	
	else if (checkInternationalPhone(myfrm.txtphone.value)==false) {
		validd = false;
		strr = strr + "Contact number is invalid.\nPlease try again\n";
		myfrm.txtphone.value="";
		myfrm.txtphone.focus();
	}
	else if (myfrm.txtaddr.value == "") {
		validd = false;
		strr = strr + "Please enter your Address\n";
		myfrm.txtaddr.focus();
	}	
	else if (myfrm.txtreq.value == "") {
		validd = false;
		strr = strr + "Please enter Requirement(s)\n";
		myfrm.txtreq.focus();
	}
	else if (myfrm.txtpayment.value == "") {
		validd = false;
		strr = strr + "Please enter a Payment method\n";
		myfrm.txtpayment.focus();
	}
	//display result of check
	if (!validd){
		alert(strr);
		return validd;
	}
	else return validd;
}
