
var montharray=new Array("January","February","March","April","May","June","July","August","September","October","November","December")

var mydate=new Date()
var year=mydate.getYear()

if (year < 1000)
year+=1900

var day=mydate.getDay()
var month=mydate.getMonth()

var daym=mydate.getDate()
if (daym<10)
daym="0"+daym
var hours=mydate.getHours()
var minutes=mydate.getMinutes()
var seconds=mydate.getSeconds()
var dn="AM"
if (hours>=12)
dn="PM"
if (hours>12){
hours=hours-12
}
if (hours==0)
hours=12
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds

var dateVal = daym + "-" + montharray[month] + "-" + year
var rtflg=true;
var pkflg=true;
var retmn = 0;
var pickmn = 0;

function validateMainForm(form) {
var v=allBlanksMain(form)
ismainFrmQuery(form)
ismainFrmPersons(form)
ismainFrmTentArrival(form)
ismainFrmDuration(form)
ismainFrmCountry(form)
ismainFrmPhone(form)
ismainFrmEmail(form)
ismainFrmName(form)
return v ;
}

function allBlanksMain(form) {
if( (ismainFrmName(form) && ismainFrmEmail(form)) && (ismainFrmPhone(form) && ismainFrmCountry(form)) && (ismainFrmDuration(form) && ismainFrmTentArrival(form)) && (ismainFrmPersons(form) && ismainFrmQuery(form)) ) {
 return true ;
}

if( (ismainFrmName(form)== false || ismainFrmEmail(form)== false) || (ismainFrmPhone(form)== false || ismainFrmCountry(form)== false) || (ismainFrmDuration(form)== false || ismainFrmTentArrival(form)== false) || (ismainFrmPersons(form)== false || ismainFrmQuery(form)== false) ) {
composeMain(form)
return false ;
   }
}
function composeMain(form) {
var text = " You entered incorrectly or forgot to fill in ::\n"	
if(ismainFrmName(form) == false) {
text += "\nYour Name -- must be purely alphabetic"
}
if(ismainFrmEmail(form) == false) {
text += "\nYour E-mail -- improper/incomplete e-mail ID"
}
if(ismainFrmPhone(form) == false) {
text += "\nPhone Number -- should be number"
}
if(ismainFrmCountry(form) == false) {
text += "\nYour Country of Residence -- must be purely alphabetic"
}
if(ismainFrmDuration(form) == false) {
text += "\nDays in Hand -- should be a number"
}
if(ismainFrmTentArrival(form) == false) {
text += "\nTentative Date for Trip -- cannot be earlier than today"
}
if(ismainFrmPersons(form) == false) {
text += "\nNo. of Adults travelling -- should be a number"
}
if(ismainFrmQuery(form) == false) {
text += "\nBooking/Travel Details -- should be given briefly"
}
alert(text)
}

//FOR NAME
function ismainFrmName(form) {
if (trim(form.txtName.value) == "") {
form.txtName.focus();
return false
}
else {
			form.txtName.value=trim(form.txtName.value);
	     if(checkforchar(form.txtName.value)== 0)
		   {
			form.txtName.focus();
			form.txtName.select();
			return(false);
			}
return true ;
   }
}

//FOR EMAIL
function ismainFrmEmail(form) {
if (trim(form.txtEmail.value)== "")
	{
		form.txtEmail.focus();
		return false; // because  it is not optional 
	}
else
	{
		var eid=form.txtEmail.value=trim(form.txtEmail.value);
		if (eid.indexOf(' ')!= -1)
			{
			form.txtEmail.focus();
			return false ; // no spaces
			} 
		if (eid.length < 6 ){
			form.txtEmail.focus();
			return false ; // at least j.a@in
			}
		at=eid.indexOf('@', 0); //check from first position ---- 
		if ( at == -1 || at == 0){ //should not be at first place
			form.txtEmail.focus();
			return false ;
			}
		else
			{
				var at1=eid.indexOf('@', (at + 1)); //looking for another at one place ahead
				if ( at1 == -1 ) // ie only one at is there
				{
					var dot=eid.indexOf('.',(at + 1));//looking for just next value
					if(dot == (at + 1)|| dot== -1){ //if dot is not there or in the next place
						form.txtEmail.focus();
						return false ;	
						}
					else
						{
						 if ( (dot + 2 ) < eid.length )
							return true ;
						 else
						    {
							form.txtEmail.focus();
							return false ;
							}
						}
				}
				else // two @ are there
				{
				form.txtEmail.focus();
				return false;
				}
			}	
	form.txtEmail.focus();
	return false ;
	}		

}
//FOR PHONE
function ismainFrmPhone(form) {
if (trim(form.txtPhone.value) == "") {
form.txtPhone.value=trim(form.txtPhone.value);
return false   
}
else {
			form.txtPhone.value=trim(form.txtPhone.value);
	     if(checkfornum(form.txtPhone.value)==0)
		   {
			form.txtPhone.focus();
			return(false);
			}
return true
   }
}
//for country of residence
function ismainFrmCountry(form){
if (trim(form.txtCountry.value) == "") {
form.txtCountry.focus();
return false
}
else {
			form.txtCountry.value=trim(form.txtCountry.value);
	     if(checkforchar(form.txtCountry.value)== 0)
		   {
			form.txtCountry.focus();
			return(false);
			}
return true ;
   }
}

//FOR No. of Persons
function ismainFrmPersons(form) {
if (trim(form.txtPersons.value) == "" || checkforzero(form.txtPersons.value) == 1 ) {
//form.adults.value=trim(form.adults.value);
//form.adults.focus();
return(false);   
}
else {
			//form.adults.value=trim(form.adults.value);
	     if(checkfornum(form.txtPersons.value)==0)
		   {
			form.txtPersons.focus();
			return(false);
			}
return true
   }
}

//FOR Days in hands
function ismainFrmDuration(form) {
if (trim(form.txtDuration.value) == "" || checkforzero(form.txtDuration.value)== 1 ) {
//form.hands.value=trim(form.hands.value);
//form.hands.focus();
return(false); 
}
else {
			form.txtDuration.value=trim(form.txtDuration.value);
	     if(checkfornum(form.txtDuration.value)==0)
		   {
			form.txtDuration.focus();
			return(false);
			}
return true
   }
}

//FOR Query
function ismainFrmQuery(form) {
form.txaQuery.value=trim(form.txaQuery.value);
if (trim(form.txaQuery.value) == "") {
form.txaQuery.focus();
return false
}
else {
			
	     if(checkfornum(form.txaQuery.value)==1)// i. e, it is a pure number that is invalid
		   {
			form.txaQuery.focus();
			return(false);
			}
		qry=trim(form.txaQuery.value);
		if(qry.length <= 6 )// if it is too short
			{
			 form.txaQuery.focus();
			 return(false);
			}	
return true ;
   }
}

function ismainFrmTentArrival(form)
{
	if (trim(form.txtStartDate.value) == "") {
		//form.txtStartDate.focus();
		return false
	}
	else {
		form.txtStartDate.value=trim(form.txtStartDate.value);
		var pattern = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
		if (pattern.test(form.txtStartDate.value))
		{
			return true;
		}
		else
		{
			//form.txtStartDate.focus();
			return false;
		}
	}
}

////////////////////////////////////////////Common Functions////////////////////////////////////////

function trim(str1)
{
// This function trims any given field value for blank spaces.
        var intCtr=0
        for(intCtr=0;str1.charAt(intCtr)==" ";intCtr++);
        str1=str1.substring(intCtr,str1.length);
        return str1;    
}

function checkforchar(strdate)
{
//This function checks for string values
var validdate = "abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	
	var strlength = strdate.length;
	for(var i=0; i<=strlength; i++)
	{
		var unitstr = strdate.substr(i,1);
		if (validdate.indexOf(unitstr)==-1)
		{
			return false;
		}
	}
	return true;
}

function checkfornum(str1) 
{
//This function checks for numeric values
        var numstr="1234567890 ,";
        var intctr,intLen;
            intLen=str1.length;
        for(intCtr=0;intCtr <= intLen && numstr.indexOf(str1.charAt(intCtr))>=0 ;intCtr++);
        if(intCtr > intLen)
        {
                return 1;
        }
        else
        {
        return 0;
        }
}

function checkforzero(str1) 
{
//This function checks for all zero with spaces
        var numstr=" 0";
        var intctr,intLen;
            intLen=str1.length;
        for(intCtr=0;intCtr <= intLen && numstr.indexOf(str1.charAt(intCtr))>=0 ;intCtr++);
        if(intCtr > intLen)
        {
                return 1; // return true if all zero and spaces are there
        }
        else
        {
        return 0;//otherwise return false
        }
}

function checkfordate(str1) 
{
//This function checks for date Type of data
        var numstr="1234567890//";
        var intctr,intLen;
            intLen=str1.length;
        for(intCtr=0;intCtr <= intLen && numstr.indexOf(str1.charAt(intCtr))>=0 ;intCtr++);
        if(intCtr > intLen)
        {
                return 1;
        }
        else
        {
        return 0;
        }
}

function GoBack() 
{ 
	history.back();   
}