var callwait=true;
var noTatkalDays;

function getNoTatkalDays(depDate)
{
	if(depDate=="26-07-2009"){
		return 6;
	}else if(depDate=="27-07-2009"){
		return 5;
	}else if(depDate=="28-07-2009"){
		return 4;
	}else{
		return 3;
	}
}

var noTatkalDays;
function validateDateForTatkal(formName){
	var depDate=formName.dep_date.value;
	var adAgeLbl=document.getElementById("adAgeLbl");
	var srLbl=document.getElementById("srLbl");
	var srAgeLbl=document.getElementById("srAgeLbl");
	var srValLbl=document.getElementById("seniorCombo");
	var nSenior=document.getElementById("senior_val");
	
	var srWomenLbl=document.getElementById("srWomenLbl");
	var srWomenAgeLbl=document.getElementById("srWomenAgeLbl");
	var srWomenValLbl=document.getElementById("seniorWomenCombo");
	var nSeniorWomen=document.getElementById("seniorWomen_val");
	
	if(formName.tatkal.checked==true){
		if(depDate=="dd-mm-yyyy"){
			alert("Please select departure date");
			formName.tatkal.checked=false;
			adAgeLbl.innerHTML="(12-59 yrs)";
			return false; 
		}
		noTatkalDays=getNoTatkalDays(depDate);
		
		var sysDate=getDtObject(currentDate,"/");
		var chgDate=getDtObject(depDate,"-");
		var no=daysElapsed(chgDate, sysDate);
		if(no>Number(noTatkalDays)){
			alert("Tatkal Departure Date can not be more than "+noTatkalDays+" days from today");
			formName.dep_date.value="dd-mm-yyyy";
			formName.tatkal.checked=false;
			adAgeLbl.innerHTML="(12-59 yrs)";
			return false;
		}
		adAgeLbl.innerHTML="12+ Yrs";
		srLbl.style.display='none';
		srWomenLbl.style.display='none';
		srAgeLbl.style.display='none';
		srWomenAgeLbl.style.display='none';
		srValLbl.style.display='none';
		srWomenValLbl.style.display='none';
		nSenior.value="0";
		nSeniorWomen.value=0;
	}else{
		adAgeLbl.innerHTML="(12-59 yrs)";
		srLbl.style.display='';
		srWomenLbl.style.display='';
		srAgeLbl.style.display='';
		srWomenAgeLbl.style.display='';
		srValLbl.style.display='';
		srWomenValLbl.style.display='';
	}
}
function daysElapsed(date1,date2){
	var d1=Date.UTC(y2k(date1.getYear()),date1.getMonth(),date1.getDate(),0,0,0);
	var d2=Date.UTC(y2k(date2.getYear()),date2.getMonth(),date2.getDate(),0,0,0);
    var difference =Number(d1)-Number(d2);
    difference=difference/1000/60/60/24;
    return difference;
}

function irSubmitForm(formName, event){
	var form;
	
	if(event=="homePage"){
		form=formName.name;
	}
	
	if(event=="landingPage" || event=="reSearch"){
		form = document.forms[formName];
	}
	
	if(!validateCommonPage(form, event)){
		return false;
	}
	
	if(event=="homePage"){
		document.getElementById('outmostT').style.visibility="hidden";
		if(callwait)
		{
			loadWaitPage();
		}
		formName.action="/indus/indianRail/indus/IRHome.do?isHomePage=true";				
		formName.submit();
	}
	
	if(event=="landingPage" || event=="reSearch"){
		if(callwait)
		{
			loadWaitPage();
		}
		form.submit();
	}
	return true;
}

function validateCommonPage(form, event){
	var frmStation=document.getElementById("stationFrom");
	var toStation=document.getElementById("stationTo");
	var nAdult=document.getElementById("child_val").value;
	var nChild=document.getElementById("adult_val").value;
	var nSenior=document.getElementById("senior_val").value;
	var nSeniorWomen=document.getElementById("seniorWomen_val").value;
	var fotTatkal=document.getElementById("tatkal");
	var totalNoOfPassenger=parseInt(nAdult)+parseInt(nChild)+parseInt(nSenior)+parseInt(nSeniorWomen);
	
	if(frmStation.value==""){
		alert("Please Enter Source Station");
		frmStation.focus();
		return false;
	}
	
	if(!checkNoneChar(frmStation.value,"")){
		frmStation.focus();
		frmStation.value="";
		return false;
	}
	
	if(toStation.value==""){
		alert("Please Enter Destination Station");
		toStation.focus();
		return false;
	}
	
	if(!checkNoneChar(toStation.value,"")){
		toStation.focus();
		toStation.value="";
		return false;
	}
	if(!validateJourneyDate(form, event)){
		return false;
	}
	if(parseInt(totalNoOfPassenger) > 6 || parseInt(totalNoOfPassenger) < 1){
		alert("No of Passenger should not be greater than six and not less than one")
		return false;
	}
	return true;
}

function checkNoneChar(value, name){
	var flag=true;
	var length=value.length;
	for (var j = 0; j < length; j++){
		var ch = value.substring(j, j + 1);
		if (((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch) && (ch!=" ") && (ch!="(") && (ch!=")"))){
			if((ch < "0" || "9" < ch || ch != "_" || ch != "/" || ch != "*" || ch != "+" || ch != "-" || ch != "%" || ch != "^" || ch != "#" || ch != "@" || ch != "!" || ch != "$" || ch != "<" || ch != ">" || ch != ":")){
				alert(" Please use only Characters between \n a to z or A to Z , Numbers and special Characters are not accepted.");
				flag=false;
				break;
			}
		}
   	}
	return flag;
}

function validateJourneyDate(form, event){
	var jrneyDate;
	
	var adAgeLbl=document.getElementById("adAgeLbl");

	var srLbl=document.getElementById("srLbl");
	var srAgeLbl=document.getElementById("srAgeLbl");
	var srValLbl=document.getElementById("seniorCombo");

	var srWomenLbl=document.getElementById("srWomenLbl");
	var srWomenAgeLbl=document.getElementById("srWomenAgeLbl");
	var srWomenValLbl=document.getElementById("seniorWomenCombo");
	
	if(event=="landingPage" || event=="reSearch"){
		jrneyDate=document.getElementById("dpt_date");
	}
	if(event=="homePage"){
		jrneyDate=document.getElementById("dpt_date1");
	}
	
	if(jrneyDate.value=="dd-mm-yyyy"){
		alert("Please Enter Journey Date");
		jrneyDate.focus();
		return false;
	}else{
		var depDate=jrneyDate.value;
		noTatkalDays=getNoTatkalDays(depDate);
		
		var sysDate=getDtObject(currentDate,"/");
		var chgDate=getDtObject(depDate,"-");
		var no=daysElapsed(chgDate, sysDate);
		if(no>90){
			alert("Departure Date can not be more than 90 days from today");
			jrneyDate.value="dd-mm-yyyy";
			return false;
		}
		var tatkal=document.getElementById("tatkal");
		if(tatkal.checked && jrneyDate.value!="dd-mm-yyyy"){
			if(no>Number(noTatkalDays)){
				alert("Tatkal Departure Date can not be more than "+noTatkalDays+" days from today");
				jrneyDate.value="dd-mm-yyyy";
				tatkal.checked=false;
				adAgeLbl.innerHTML="(12-59 yrs)";
				srLbl.style.display='';
				srWomenLbl.style.display='';
				srAgeLbl.style.display='';
				srWomenAgeLbl.style.display='';
				srValLbl.style.display='';
				srWomenValLbl.style.display='';
				return false;
			}
		}
	}
	return true;
}
