errcode = new Array("You must enter a Departure City",
"You must enter a Destination",
"You must enter a Departure Date",
"You must enter an Arrival Date",
"You must enter a No. of passengers",
"You must enter a Name",
"You must enter a Telephone Number",
"You must enter an Email Address",
"The email format is not valid")

arrfield = new Array("Departure",
"Arrival",
"Departure_date",
"Arrival_date",
"No_Passengers",
"Name",
"Phone",
"AdminFrom",
"AdminFrom");


function chkfield(chk, errvalue, err){
	if(chk.value.toUpperCase()==errvalue){
		arrerr = new Array(err,chk);
	}else{
		arrerr = new Array(500,chk);
	}
	return arrerr;
}

function chkemail(chk, err){
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(chk.value)==false){
		arrerr = new Array(err,chk);
	}else{
		arrerr = new Array(500,chk);
	}
	return arrerr;
}

function gn(x){
	return document.getElementsByName(arrfield[x])[0];
}

function frmvalidate(){
	txterrcon = "";
	arerr = new Array();
	arerr.push(chkfield(gn(0),"",0));
	arerr.push(chkfield(gn(1),"",1));
	arerr.push(chkfield(gn(2),"DD/MM/YYYY",2));
	if(gn(2).value.toUpperCase()!="DD/MM/YYYY")
		arerr.push(chkfield(gn(2),"",2));
	arerr.push(chkfield(gn(3),"DD/MM/YYYY",3));
	if(gn(3).value.toUpperCase()!="DD/MM/YYYY")
		arerr.push(chkfield(gn(3),"",3));
	arerr.push(chkfield(gn(4),"",4));
	arerr.push(chkfield(gn(5),"",5));
	arerr.push(chkfield(gn(6),"",6));
	arerr.push(chkfield(gn(7),"",7));
	if(gn(6).value!=""){
		arerr.push(chkemail(gn(7),8));
	}

	for(i=0; i<arerr.length;i++){
		if(arerr[i][0]!=500){
			txterrcon = txterrcon + errcode[arerr[i][0]] + "<br>";
			arerr[i][1].style.backgroundColor = "#ffd0d0";
		}else{
			arerr[i][1].style.backgroundColor = "#fff";
		}
	}
	if(txterrcon!=""){
		document.getElementById("txterror").innerHTML = txterrcon;
		document.getElementById("tblerror").style.display = "block";
	}else{
		document.getElementById("tblerror").style.display = "none";
		frmquote.submit();
	}
}

function getGMTServerDate(){
	newDate = new Date();
	if(SERVER_DATE){
		newDate.setDate(SERVER_DATE.getDate());
		newDate.setMonth(SERVER_DATE.getMonth());
		newDate.setYear(SERVER_DATE.getFullYear());
		newDate.setHours(SERVER_DATE.getHours());
		newDate.setMinutes(SERVER_DATE.getMinutes());
		newDate.setSeconds(SERVER_DATE.getSeconds());
	}
	return newDate;
}

function initNewCalendar(){
	/*if(Language == "english")
	lang = "en";
	else if(Language == "french")
	 lang= "fr";
	else if (Language =="de" || Language == "it")
	lang = Language;*/
	
	lang="en"
	initCalendar();
	setDisplayFields("departure1", "dl1");
	setDisplayFields("departure2", "dl2");
	setDateAdjustFields("departure1","departure2");
	registerSelect("departure1", "departTime2");
	registerSelect("departure1", "numberOfAdults");
	registerSelect("departure1", "numberOfYouth");
	registerSelect("departure1", "numberOfChildren");
	registerSelect("departure1", "numberOfInfants");
	registerSelect("departure1", "countryOfResidence");
	registerSelect("departure2", "numberOfAdults");
	registerSelect("departure2", "numberOfYouth");
	registerSelect("departure2", "numberOfChildren");
	registerSelect("departure2", "numberOfInfants");
	registerSelect("departure2", "countryOfResidence");
	setNextFocusField("departure1", "departure2");
	setNextFocusField("departure2", "numberOfAdults");
}

function getServerTime(ssiDate) {

	var dateTime = ssiDate.split(" ");
	var date = dateTime[0].split("-");
	var time = dateTime[1].split(":");
	
	//alert("getSErverTime for "+ssiDate);
	//alert("date = "+dateTime[0]);
	//alert("time = "+dateTime[1]);
	var serverTime = new Date();
	//alert("server time 1 = "+serverTime);
	serverTime.setDate(date[0]);
	serverTime.setMonth(parseInt(date[1],10)-1);
	serverTime.setYear(date[2]);
	serverTime.setHours(time[0]);
	serverTime.setMinutes(time[1]);
	serverTime.setSeconds(time[2]);
	//alert("serverTime = "+ serverTime.toLocaleString());
	// SR97501934 *********** code start
	SERVER_DATE = new Date();
	SERVER_DATE.setDate(serverTime.getDate());
	SERVER_DATE.setMonth(serverTime.getMonth());
	SERVER_DATE.setYear(serverTime.getFullYear());
	SERVER_DATE.setHours(serverTime.getHours());
	SERVER_DATE.setMinutes(serverTime.getMinutes());
	SERVER_DATE.setSeconds(serverTime.getSeconds());
	LocalDate = new Date();
	currentTimeZoneOffsetInMinutes = LocalDate.getTimezoneOffset();
	currentTimeZoneOffsetInHours = parseInt(currentTimeZoneOffsetInMinutes/60, 10);
	currentTimeZoneOffsetInMinutes = currentTimeZoneOffsetInMinutes - currentTimeZoneOffsetInHours*60;
	newHours = parseInt(time[0],10)-currentTimeZoneOffsetInHours;
	SERVER_DATE.setHours(newHours);
	SERVER_DATE.setMinutes(parseInt(time[1],10)+currentTimeZoneOffsetInMinutes);
	// SR97501934 ***** code end
	return serverTime;
}
