NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1 : 0;
var calendarOpened = false;


function IsLeap(year) {
	return( 0 == year % 4 && (( year % 100 != 0 ) || ( year % 400 == 0 )) );
}

function opencal(a,f){
	var frm=document.forms[f];
	calendarOpened = true;
	var day=frm['day'+a].options[frm['day'+a].options.selectedIndex].value;

	var month = 1;
	var year  = 1;

	if (frm['monthyear'+a]){
		a1=frm['monthyear'+a].options[frm['monthyear'+a].options.selectedIndex].value;
		a2=a1.split('-');
		month = a2[0];
		year  = a2[1];
		if(year=='1980'){a1=frm['monthyear'+a].options[frm['monthyear'+a].options.selectedIndex+1].value;
                	a2=a1.split('-');
	                month = a2[0];
	                year  = a2[1];
		}
		if(year=='2030'){a1=frm['monthyear'+a].options[frm['monthyear'+a].options.selectedIndex+1].value;
                        a2=a1.split('-');
                        month = a2[0];
                        year  = a2[1];
                }

		
	}else{
		month=frm['month'+a].options[frm['month'+a].options.selectedIndex].value;
		year=frm['year'+a].options[frm['year'+a].options.selectedIndex].value;
	}
	
	var x='calendar.php?datefirld='+a+'&form='+f+'&day='+day+'&month='+month+'&year='+year+'';
	window.open(x,"new","scrollbars=yes,resizable=yes,width=300,height=250,left=50,top=50");
}

function setdate(a,b,d,m,y){
	var frm=document.forms[b];
//alert(a+'      '+b+'       '+d);


	if (frm['monthyear'+a]){
		for (i=0; i<frm['monthyear'+a].options.length; i++){
			if (frm['monthyear'+a].options[i].value==m + '-' + y){
				frm['monthyear'+a].options.selectedIndex=i;
				break;
			}		
		}
	}else{
		frm['month'+a].options.selectedIndex=m-1;

		for (i=0;i<frm['year'+a].options.length;i++){
			if (frm['year'+a].options[i].value==y){
				frm['year'+a].options.selectedIndex=i;
				break;
			}		
		}
	}

var formm=eval('document.forms[b].day'+a);
//alert(formm.options[d-1].value);
	formm.options[d-1].selected=true;
	frm['day'+a].options.selectedIndex=d-1;
	if (a=='from'){
		makediffer(b);
	}

}

function makediffer(b){
	var frm=document.forms[b];


		if ((b=='SUCH') | (b==4)){
			window.status = "exiting as form is " + b;
			return;
		}

		diff = 7;  // use difference of 7 days between dates regardless
		var d1=frm['dayfrom'].options.selectedIndex+ diff + 1;

		if (frm['monthfrom']){   // depending on form different field names exist
			var m1=frm['monthfrom'].options.selectedIndex+1;
			var y1=frm['yearfrom'].options.selectedIndex;
			var y2=frm['yearfrom'].options[y1].value;
		}
		else {
			var s = new String;
			s = frm['monthyearfrom'].options[frm['monthyearfrom'].options.selectedIndex].value;
			myfrom=s.split('-');
			var m1=myfrom[0];
			
		}
		
		var mntl = new Array;
		mntl[1]=31;
		mntl[2]=(IsLeap(y2)?29:28);
		mntl[3]=31;
		mntl[4]=30;
		mntl[5]=31;
		mntl[6]=30;
		mntl[7]=31;
		mntl[8]=31;
		mntl[9]=30;
		mntl[10]=31;
		mntl[11]=30;
		mntl[12]=31;
	
	

		if (d1>mntl[m1]){
			d1=d1%mntl[m1];
			m1++;
			if (m1>12){
				m1=m1%12;
				y1++;
			}
		}
		
		frm['dayto'].options.selectedIndex=d1-1;
		if (frm['monthfrom']){  
			frm['monthto'].options.selectedIndex=m1-1;
			frm['yearto'].options.selectedIndex=y1;
		}else{ window.status = "form is not monthfrom";		
		var val = new String;
				for (i=0;i<frm['monthyearto'].options.length;i++){
					val=frm['monthyearto'].options[i].value;
					s=val.split('-');					
					if (m1 == s[0]){
						frm['monthyearto'].options.selectedIndex=i;
						break;
					}		
				}			
		}
	
		if (calendarOpened){
			if (document.all.search){
				if (b==2)	document.all.search.innerHTML=document.all.flightsearch.innerHTML;
				if (b==3)	document.all.search.innerHTML=document.all.hotelsearch.innerHTML;
			}
		}
		calendarOpened = false; // set back to false so we do not accidentally trigger a form refresh
			// as date is changed manually


}
