required = new Array("Email", "Telephone", "Name");
requiredOff = new Array("Nett_Area", "No_Of_Lifts", "No_Of_Floors");
requiredHot = new Array("No_Of_Lifts", "No_Of_Guest_Lifts", "No_Of_Service_Lifts", "No_Of_Family_Suite", "No_Of_Double_Room", "No_Of_Other_Room", "No_Of_Floors");
requiredApart = new Array("Units", "No_Of_Lifts", "No_Of_Floors");
requiredOth = new Array("Type", "No_Of_Lifts", "No_Of_Floors");

//Validation Routines
var emailregex = /^[a-z][a-z\-\_0-9\.]+@[a-z-_0-9\.]+\.[a-z]{2,4}$/i;
var notgiven = "";
var msg = "";

//============Check if a field is blank================
function isBlank(s) {
 var len=s.length;
 var i;
 for(i=0;i<len;++i) {
  if(s.charAt(i)!=" ") return false;
 }
 return true;
}

//================Email Address validation routine=========
function correct_email(str) {
        return emailregex.test(str);
}

function validateEmail() {
	if(!isBlank(document.frmFB.Email.value)){
		if(!correct_email(document.frmFB.Email.value)) {
			alert("The email address should be in the format xxx@xxxx.xxx");
			document.frmFB.Email.focus();
			document.frmFB.Email.select();
			return false;
		}
	}
	return true;
}

//==============Check if a field is blank===========

function validate(fieldName,fieldValue) {
	if(isBlank(fieldValue)) {
		notgiven = fieldName + ".";
 }
}

//=Validate fields and send Form if OK or generate proper alert message=====
function verifyFrmFB() {
validation = true;
for(var i=0; i < required.length; ++i) {
	ele = eval("document.frmFB." + required[i]);
	 validate(ele.name, ele.value);
}
if (notgiven != "") {
	msg = "Please fill in your " + notgiven;
	alert(msg);
	notgiven = "";	
	validation = false;
}
if (!validateEmail()) {
	validation = false;
}
if (!validation) {
	return false;
}
return true;
}

function verifyFrmOff() {
validation = true;
for(var i=0; i < requiredOff.length; ++i) {
	ele = eval("document.frmOffice." + requiredOff[i]);
	 validate(ele.name, ele.value);
}
if (notgiven != "") {
	msg = "Field marked with an asterick(*) is required";
	alert(msg);
	notgiven = "";	
	validation = false;
}
if (!validation) {
	return false;
}
return true;
}

function verifyFrmHot() {
validation = true;
for(var i=0; i < requiredHot.length; ++i) {
	ele = eval("document.frmHotel." + requiredHot[i]);
	 validate(ele.name, ele.value);
}
if (notgiven != "") {
	msg = "Field marked with an asterick(*) is required";
	alert(msg);
	notgiven = "";	
	validation = false;
}
if (!validation) {
	return false;
}
return true;
}

function verifyFrmApart() {
validation = true;
for(var i=0; i < requiredApart.length; ++i) {
	ele = eval("document.frmApart." + requiredApart[i]);
	 validate(ele.name, ele.value);
}
if (notgiven != "") {
	msg = "Field marked with an asterick(*) is required";
	alert(msg);
	notgiven = "";	
	validation = false;
}
if (!validation) {
	return false;
}
return true;
}

function verifyFrmOth() {
validation = true;
for(var i=0; i < requiredOth.length; ++i) {
	ele = eval("document.frmOthers." + requiredOth[i]);
	 validate(ele.name, ele.value);
}
if (notgiven != "") {
	msg = "Field marked with an asterick(*) is required";
	alert(msg);
	notgiven = "";	
	validation = false;
}
if (!validation) {
	return false;
}
return true;
}
