var dep_points=new Array();
var des_points=new Array();
var dep_dates=new Array();

function getDepPoint(id) {
	for (var i=0;i<dep_points.length;i++)
		if (dep_points[i].id==id) return dep_points[i];
	return false;
}

function getDesPoint(id) {
	for (var i=0;i<des_points.length;i++)
		if (des_points[i].id==id) return des_points[i];
	return false;

}

function getDepDateList(dep_code,des_id) {
	for (var i=0;i<dep_dates.length;i++)
		if (dep_dates[i].dep_code==dep_code && dep_dates[i].des_id==des_id) 
			return dep_dates[i];
	return false;
}

function getDepDate(list,dep_date) {
	for (var i=0;i<list.length;i++) 
		if (list[i].formated==dep_date)
			return list[i];
	return false;
}

function addDepDate(dep_code,des_id,stdate,duration) {
	var obj=getDepDateList(dep_code,des_id);
	if (!obj) {
		var obj=new Object();
		obj.dep_code=dep_code;
		obj.des_id=des_id;
		obj.dates=new Array();
		var obj1=new Object();
		obj1.formated=stdate;
		obj1.durations=new Array();
		obj1.durations[0]=duration;
		obj.dates[0]=obj1;
		dep_dates[dep_dates.length]=obj;
	} else {
		var startdate=getDepDate(obj.dates,stdate);
		if (startdate) {
			var exists=false;
			for (var i=0;i<startdate.durations.length;i++) 
				if (startdate.durations[i]==duration) 
					exists=true;
			if (!exists) startdate.durations[startdate.durations.length]=duration;
		} else {
			var obj1=new Object();
			obj1.formated=stdate;
			obj1.durations=new Array();
			obj1.durations[0]=duration;
			obj.dates[obj.dates.length]=obj1;
		}

	}


}

obj=getDepPoint('LGW');
if (!obj) {
	var obj=new Object();
	obj.id='LGW';
	obj.name='London Gatwick';
	obj.city='337';
	obj.destinations=new Array();
	obj.destinations[0]='3947';
	dep_points[dep_points.length]=obj;
} else 
	obj.destinations[obj.destinations.length]='3947';

obj=getDepPoint('LGW');
if (!obj) {
	var obj=new Object();
	obj.id='LGW';
	obj.name='London Gatwick';
	obj.city='337';
	obj.destinations=new Array();
	obj.destinations[0]='9324';
	dep_points[dep_points.length]=obj;
} else 
	obj.destinations[obj.destinations.length]='9324';

obj=getDepPoint('MAN');
if (!obj) {
	var obj=new Object();
	obj.id='MAN';
	obj.name='Manchester Intl';
	obj.city='338';
	obj.destinations=new Array();
	obj.destinations[0]='3947';
	dep_points[dep_points.length]=obj;
} else 
	obj.destinations[obj.destinations.length]='3947';

var obj=new Object();
obj.id='3947';
obj.name='Goa';
des_points[des_points.length]=obj;
var obj=new Object();
obj.id='9324';
obj.name='Kovalam';
des_points[des_points.length]=obj;
addDepDate('LGW','3947','07-Nov-2008','8');
addDepDate('LGW','9324','07-Nov-2008','8');
addDepDate('MAN','3947','07-Nov-2008','8');
addDepDate('LGW','3947','07-Nov-2008','15');
addDepDate('LGW','9324','07-Nov-2008','15');
addDepDate('LGW','','07-Nov-2008','15');
addDepDate('MAN','3947','07-Nov-2008','15');
addDepDate('LGW','3947','07-Nov-2008','22');
addDepDate('LGW','9324','07-Nov-2008','22');
addDepDate('MAN','3947','07-Nov-2008','22');
addDepDate('LGW','3947','07-Nov-2008','29');
addDepDate('LGW','9324','07-Nov-2008','29');
addDepDate('MAN','3947','07-Nov-2008','29');
addDepDate('LGW','3947','14-Nov-2008','8');
addDepDate('LGW','9324','14-Nov-2008','8');
addDepDate('MAN','3947','14-Nov-2008','8');
addDepDate('LGW','3947','14-Nov-2008','15');
addDepDate('LGW','9324','14-Nov-2008','15');
addDepDate('LGW','','14-Nov-2008','15');
addDepDate('MAN','3947','14-Nov-2008','15');
addDepDate('LGW','3947','14-Nov-2008','22');
addDepDate('LGW','9324','14-Nov-2008','22');
addDepDate('MAN','3947','14-Nov-2008','22');
addDepDate('LGW','3947','14-Nov-2008','29');
addDepDate('LGW','9324','14-Nov-2008','29');
addDepDate('MAN','3947','14-Nov-2008','29');
addDepDate('LGW','3947','21-Nov-2008','8');
addDepDate('LGW','9324','21-Nov-2008','8');
addDepDate('MAN','3947','21-Nov-2008','8');
addDepDate('LGW','3947','21-Nov-2008','15');
addDepDate('LGW','9324','21-Nov-2008','15');
addDepDate('LGW','','21-Nov-2008','15');
addDepDate('MAN','3947','21-Nov-2008','15');
addDepDate('LGW','3947','21-Nov-2008','22');
addDepDate('LGW','9324','21-Nov-2008','22');
addDepDate('MAN','3947','21-Nov-2008','22');
addDepDate('LGW','3947','21-Nov-2008','29');
addDepDate('LGW','9324','21-Nov-2008','29');
addDepDate('MAN','3947','21-Nov-2008','29');
addDepDate('LGW','3947','28-Nov-2008','8');
addDepDate('LGW','9324','28-Nov-2008','8');
addDepDate('MAN','3947','28-Nov-2008','8');
addDepDate('LGW','3947','28-Nov-2008','15');
addDepDate('LGW','9324','28-Nov-2008','15');
addDepDate('LGW','','28-Nov-2008','15');
addDepDate('MAN','3947','28-Nov-2008','15');
addDepDate('LGW','3947','28-Nov-2008','22');
addDepDate('LGW','9324','28-Nov-2008','22');
addDepDate('MAN','3947','28-Nov-2008','22');
addDepDate('LGW','3947','28-Nov-2008','29');
addDepDate('LGW','9324','28-Nov-2008','29');
addDepDate('MAN','3947','28-Nov-2008','29');
addDepDate('LGW','3947','05-Dec-2008','8');
addDepDate('LGW','9324','05-Dec-2008','8');
addDepDate('MAN','3947','05-Dec-2008','8');
addDepDate('LGW','3947','05-Dec-2008','15');
addDepDate('LGW','9324','05-Dec-2008','15');
addDepDate('MAN','3947','05-Dec-2008','15');
addDepDate('LGW','3947','05-Dec-2008','22');
addDepDate('LGW','9324','05-Dec-2008','22');
addDepDate('MAN','3947','05-Dec-2008','22');
addDepDate('LGW','3947','05-Dec-2008','29');
addDepDate('LGW','9324','05-Dec-2008','29');
addDepDate('MAN','3947','05-Dec-2008','29');
addDepDate('LGW','3947','12-Dec-2008','8');
addDepDate('LGW','9324','12-Dec-2008','8');
addDepDate('MAN','3947','12-Dec-2008','8');
addDepDate('LGW','3947','12-Dec-2008','15');
addDepDate('LGW','9324','12-Dec-2008','15');
addDepDate('MAN','3947','12-Dec-2008','15');
addDepDate('LGW','3947','12-Dec-2008','22');
addDepDate('LGW','9324','12-Dec-2008','22');
addDepDate('MAN','3947','12-Dec-2008','22');
addDepDate('LGW','3947','12-Dec-2008','29');
addDepDate('LGW','9324','12-Dec-2008','29');
addDepDate('MAN','3947','12-Dec-2008','29');
addDepDate('LGW','3947','19-Dec-2008','8');
addDepDate('LGW','9324','19-Dec-2008','8');
addDepDate('MAN','3947','19-Dec-2008','8');
addDepDate('LGW','3947','19-Dec-2008','15');
addDepDate('LGW','9324','19-Dec-2008','15');
addDepDate('MAN','3947','19-Dec-2008','15');
addDepDate('LGW','3947','19-Dec-2008','22');
addDepDate('LGW','9324','19-Dec-2008','22');
addDepDate('MAN','3947','19-Dec-2008','22');
addDepDate('LGW','3947','19-Dec-2008','29');
addDepDate('LGW','9324','19-Dec-2008','29');
addDepDate('MAN','3947','19-Dec-2008','29');
addDepDate('LGW','3947','26-Dec-2008','8');
addDepDate('LGW','9324','26-Dec-2008','8');
addDepDate('MAN','3947','26-Dec-2008','8');
addDepDate('LGW','3947','26-Dec-2008','15');
addDepDate('LGW','9324','26-Dec-2008','15');
addDepDate('MAN','3947','26-Dec-2008','15');
addDepDate('LGW','3947','26-Dec-2008','22');
addDepDate('LGW','9324','26-Dec-2008','22');
addDepDate('MAN','3947','26-Dec-2008','22');
addDepDate('LGW','3947','26-Dec-2008','29');
addDepDate('LGW','9324','26-Dec-2008','29');
addDepDate('MAN','3947','26-Dec-2008','29');
addDepDate('LGW','3947','02-Jan-2009','8');
addDepDate('LGW','9324','02-Jan-2009','8');
addDepDate('MAN','3947','02-Jan-2009','8');
addDepDate('LGW','3947','02-Jan-2009','15');
addDepDate('LGW','9324','02-Jan-2009','15');
addDepDate('MAN','3947','02-Jan-2009','15');
addDepDate('LGW','3947','02-Jan-2009','22');
addDepDate('LGW','9324','02-Jan-2009','22');
addDepDate('MAN','3947','02-Jan-2009','22');
addDepDate('LGW','3947','02-Jan-2009','29');
addDepDate('LGW','9324','02-Jan-2009','29');
addDepDate('MAN','3947','02-Jan-2009','29');
addDepDate('LGW','3947','09-Jan-2009','8');
addDepDate('LGW','9324','09-Jan-2009','8');
addDepDate('MAN','3947','09-Jan-2009','8');
addDepDate('LGW','3947','09-Jan-2009','15');
addDepDate('LGW','9324','09-Jan-2009','15');
addDepDate('MAN','3947','09-Jan-2009','15');
addDepDate('LGW','3947','09-Jan-2009','22');
addDepDate('LGW','9324','09-Jan-2009','22');
addDepDate('MAN','3947','09-Jan-2009','22');
addDepDate('LGW','3947','09-Jan-2009','29');
addDepDate('LGW','9324','09-Jan-2009','29');
addDepDate('MAN','3947','09-Jan-2009','29');
addDepDate('LGW','3947','16-Jan-2009','8');
addDepDate('LGW','9324','16-Jan-2009','8');
addDepDate('MAN','3947','16-Jan-2009','8');
addDepDate('LGW','3947','16-Jan-2009','15');
addDepDate('LGW','9324','16-Jan-2009','15');
addDepDate('MAN','3947','16-Jan-2009','15');
addDepDate('LGW','3947','16-Jan-2009','22');
addDepDate('LGW','9324','16-Jan-2009','22');
addDepDate('MAN','3947','16-Jan-2009','22');
addDepDate('LGW','3947','16-Jan-2009','29');
addDepDate('LGW','9324','16-Jan-2009','29');
addDepDate('MAN','3947','16-Jan-2009','29');
addDepDate('LGW','3947','23-Jan-2009','8');
addDepDate('LGW','9324','23-Jan-2009','8');
addDepDate('MAN','3947','23-Jan-2009','8');
addDepDate('LGW','3947','23-Jan-2009','15');
addDepDate('LGW','9324','23-Jan-2009','15');
addDepDate('MAN','3947','23-Jan-2009','15');
addDepDate('LGW','3947','23-Jan-2009','22');
addDepDate('LGW','9324','23-Jan-2009','22');
addDepDate('MAN','3947','23-Jan-2009','22');
addDepDate('LGW','3947','23-Jan-2009','29');
addDepDate('LGW','9324','23-Jan-2009','29');
addDepDate('MAN','3947','23-Jan-2009','29');
addDepDate('LGW','3947','30-Jan-2009','8');
addDepDate('LGW','9324','30-Jan-2009','8');
addDepDate('MAN','3947','30-Jan-2009','8');
addDepDate('LGW','3947','30-Jan-2009','15');
addDepDate('LGW','9324','30-Jan-2009','15');
addDepDate('MAN','3947','30-Jan-2009','15');
addDepDate('LGW','3947','30-Jan-2009','22');
addDepDate('LGW','9324','30-Jan-2009','22');
addDepDate('MAN','3947','30-Jan-2009','22');
addDepDate('LGW','3947','30-Jan-2009','29');
addDepDate('LGW','9324','30-Jan-2009','29');
addDepDate('MAN','3947','30-Jan-2009','29');
addDepDate('LGW','3947','06-Feb-2009','8');
addDepDate('LGW','9324','06-Feb-2009','8');
addDepDate('MAN','3947','06-Feb-2009','8');
addDepDate('LGW','3947','06-Feb-2009','15');
addDepDate('LGW','9324','06-Feb-2009','15');
addDepDate('MAN','3947','06-Feb-2009','15');
addDepDate('LGW','3947','06-Feb-2009','22');
addDepDate('LGW','9324','06-Feb-2009','22');
addDepDate('MAN','3947','06-Feb-2009','22');
addDepDate('LGW','3947','06-Feb-2009','29');
addDepDate('LGW','9324','06-Feb-2009','29');
addDepDate('MAN','3947','06-Feb-2009','29');
addDepDate('LGW','3947','13-Feb-2009','8');
addDepDate('LGW','9324','13-Feb-2009','8');
addDepDate('MAN','3947','13-Feb-2009','8');
addDepDate('LGW','3947','13-Feb-2009','15');
addDepDate('LGW','9324','13-Feb-2009','15');
addDepDate('MAN','3947','13-Feb-2009','15');
addDepDate('LGW','3947','13-Feb-2009','22');
addDepDate('LGW','9324','13-Feb-2009','22');
addDepDate('MAN','3947','13-Feb-2009','22');
addDepDate('LGW','3947','13-Feb-2009','29');
addDepDate('LGW','9324','13-Feb-2009','29');
addDepDate('MAN','3947','13-Feb-2009','29');
addDepDate('LGW','3947','20-Feb-2009','8');
addDepDate('LGW','9324','20-Feb-2009','8');
addDepDate('MAN','3947','20-Feb-2009','8');
addDepDate('LGW','3947','20-Feb-2009','15');
addDepDate('LGW','9324','20-Feb-2009','15');
addDepDate('MAN','3947','20-Feb-2009','15');
addDepDate('LGW','3947','20-Feb-2009','22');
addDepDate('LGW','9324','20-Feb-2009','22');
addDepDate('MAN','3947','20-Feb-2009','22');
addDepDate('LGW','3947','20-Feb-2009','29');
addDepDate('LGW','9324','20-Feb-2009','29');
addDepDate('MAN','3947','20-Feb-2009','29');
addDepDate('LGW','3947','27-Feb-2009','8');
addDepDate('LGW','9324','27-Feb-2009','8');
addDepDate('MAN','3947','27-Feb-2009','8');
addDepDate('LGW','3947','27-Feb-2009','15');
addDepDate('LGW','9324','27-Feb-2009','15');
addDepDate('MAN','3947','27-Feb-2009','15');
addDepDate('LGW','3947','27-Feb-2009','22');
addDepDate('LGW','9324','27-Feb-2009','22');
addDepDate('MAN','3947','27-Feb-2009','22');
addDepDate('LGW','3947','27-Feb-2009','29');
addDepDate('LGW','9324','27-Feb-2009','29');
addDepDate('MAN','3947','27-Feb-2009','29');
addDepDate('LGW','3947','06-Mar-2009','8');
addDepDate('LGW','9324','06-Mar-2009','8');
addDepDate('MAN','3947','06-Mar-2009','8');
addDepDate('LGW','3947','06-Mar-2009','15');
addDepDate('LGW','9324','06-Mar-2009','15');
addDepDate('MAN','3947','06-Mar-2009','15');
addDepDate('LGW','3947','06-Mar-2009','22');
addDepDate('LGW','9324','06-Mar-2009','22');
addDepDate('MAN','3947','06-Mar-2009','22');
addDepDate('LGW','3947','06-Mar-2009','29');
addDepDate('LGW','9324','06-Mar-2009','29');
addDepDate('MAN','3947','06-Mar-2009','29');
addDepDate('LGW','3947','13-Mar-2009','8');
addDepDate('LGW','9324','13-Mar-2009','8');
addDepDate('MAN','3947','13-Mar-2009','8');
addDepDate('LGW','3947','13-Mar-2009','15');
addDepDate('LGW','9324','13-Mar-2009','15');
addDepDate('MAN','3947','13-Mar-2009','15');
addDepDate('LGW','3947','13-Mar-2009','22');
addDepDate('LGW','9324','13-Mar-2009','22');
addDepDate('MAN','3947','13-Mar-2009','22');
addDepDate('LGW','3947','13-Mar-2009','29');
addDepDate('LGW','9324','13-Mar-2009','29');
addDepDate('MAN','3947','13-Mar-2009','29');
addDepDate('LGW','3947','20-Mar-2009','8');
addDepDate('LGW','9324','20-Mar-2009','8');
addDepDate('MAN','3947','20-Mar-2009','8');
addDepDate('LGW','3947','20-Mar-2009','15');
addDepDate('LGW','9324','20-Mar-2009','15');
addDepDate('MAN','3947','20-Mar-2009','15');
addDepDate('LGW','3947','20-Mar-2009','22');
addDepDate('LGW','9324','20-Mar-2009','22');
addDepDate('MAN','3947','20-Mar-2009','22');
addDepDate('LGW','3947','20-Mar-2009','29');
addDepDate('LGW','9324','20-Mar-2009','29');
addDepDate('MAN','3947','20-Mar-2009','29');
addDepDate('LGW','3947','27-Mar-2009','8');
addDepDate('LGW','9324','27-Mar-2009','8');
addDepDate('MAN','3947','27-Mar-2009','8');
addDepDate('LGW','3947','27-Mar-2009','15');
addDepDate('LGW','9324','27-Mar-2009','15');
addDepDate('MAN','3947','27-Mar-2009','15');
addDepDate('LGW','3947','27-Mar-2009','22');
addDepDate('LGW','9324','27-Mar-2009','22');
addDepDate('MAN','3947','27-Mar-2009','22');
addDepDate('LGW','3947','27-Mar-2009','29');
addDepDate('LGW','9324','27-Mar-2009','29');
addDepDate('MAN','3947','27-Mar-2009','29');
addDepDate('LGW','3947','03-Apr-2009','8');
addDepDate('LGW','9324','03-Apr-2009','8');
addDepDate('MAN','3947','03-Apr-2009','8');
addDepDate('LGW','3947','03-Apr-2009','15');
addDepDate('LGW','9324','03-Apr-2009','15');
addDepDate('MAN','3947','03-Apr-2009','15');
addDepDate('LGW','3947','03-Apr-2009','22');
addDepDate('LGW','9324','03-Apr-2009','22');
addDepDate('MAN','3947','03-Apr-2009','22');
addDepDate('LGW','3947','03-Apr-2009','29');
addDepDate('LGW','9324','03-Apr-2009','29');
addDepDate('LGW','3947','10-Apr-2009','8');
addDepDate('LGW','9324','10-Apr-2009','8');
addDepDate('MAN','3947','10-Apr-2009','8');
addDepDate('LGW','3947','10-Apr-2009','15');
addDepDate('LGW','9324','10-Apr-2009','15');
addDepDate('MAN','3947','10-Apr-2009','15');
addDepDate('LGW','3947','10-Apr-2009','22');
addDepDate('LGW','9324','10-Apr-2009','22');
addDepDate('LGW','3947','10-Apr-2009','29');
addDepDate('LGW','9324','10-Apr-2009','29');
addDepDate('LGW','3947','17-Apr-2009','8');
addDepDate('LGW','9324','17-Apr-2009','8');
addDepDate('MAN','3947','17-Apr-2009','8');
addDepDate('LGW','3947','17-Apr-2009','15');
addDepDate('LGW','9324','17-Apr-2009','15');
addDepDate('MAN','3947','17-Apr-2009','15');
addDepDate('LGW','3947','17-Apr-2009','22');
addDepDate('LGW','9324','17-Apr-2009','22');
addDepDate('LGW','3947','17-Apr-2009','29');
addDepDate('LGW','9324','17-Apr-2009','29');
addDepDate('LGW','3947','24-Apr-2009','8');
addDepDate('MAN','3947','24-Apr-2009','8');
addDepDate('LGW','3947','24-Apr-2009','15');
addDepDate('MAN','3947','24-Apr-2009','15');
addDepDate('LGW','3947','24-Apr-2009','22');
addDepDate('LGW','3947','24-Apr-2009','29');

function populate(el,arr) {
	var selectedId='';
	if (arguments.length>2) selectedId=arguments[2];
	el.options.length=0;
	for (var i=0;i<arr.length;i++) {
		var opt=new Option(arr[i].name,arr[i].id);
		if (arr[i].id==selectedId) opt.selected=true;
		el.options[el.options.length]=opt;
	}
}

function popDepartures() {
	var list=new Array();
	list[0]=new Object();
	list[0].id='';
	list[0].name='--- Please select ---';
	for (var i=0;i<dep_points.length;i++) 
		list[list.length]=dep_points[i];
	var el=document.getElementById('departure');
	if (el)
		populate(el,list);

}

function popDestinations() {
	var dep='';
	var dep_obj=false;
	if (arguments.length>0) dep=arguments[0];
	var list=new Array();
	list[0]=new Object();
	list[0].id='';
	list[0].name='--- Please select ---';

	if (dep) dep_obj=getDepPoint(dep);
	if (dep_obj) {
		for (var i=0;i<dep_obj.destinations.length;i++) {
			var des=getDesPoint(dep_obj.destinations[i]);
			list[list.length]=des;
		}
	} else 
		for (var i=0;i<des_points.length;i++) 
			list[list.length]=des_points[i];

	var el=document.getElementById('destination');
	if (el)
		populate(el,list);

}


function resetDates(el) {
	el.options.length=1;
	el.options[0].innerHTML='-- Selecte destination --';
}

function popDepDates(el,dep_code,des_id) {
	var obj1=getDepDateList(dep_code,des_id);
	if (!obj1) return false;
	var dates=obj1.dates;
	var list=new Array();
	list[0]=new Object();
	list[0].id='';
	list[0].name='--- Please select ---';

	for (var i=0;i<dates.length;i++) {
		var obj=new Object();
		obj.id=dates[i].formated;
		obj.name=dates[i].formated;
		list[list.length]=obj;
	}

	if (el) populate(el,list);

}

function resetDurations(el) {
	el.options.length=1;
}

function popDurations(el,dep_code,des_id,stdate) {
	var obj1=getDepDateList(dep_code,des_id);
	if (!obj1) return false;
	var obj2=getDepDate(obj1.dates,stdate);
	if (!obj2) return false;
	var list=new Array();
	list[0]=new Object();
	list[0].id='';
	list[0].name='--';

	for (var i=0;i<obj2.durations.length;i++) {
		var obj=new Object();
		obj.id=obj2.durations[i];
		obj.name=obj2.durations[i]-1;
		list[list.length]=obj;
	}

	if (el) populate(el,list);

}

function changeRooms(frm) {

	var noRooms=frm.elements['rooms'].options[frm.elements['rooms'].selectedIndex].value;
	for (var i=0;i<noRooms;i++) {

		var room=document.getElementById('room['+i+']');
		room.style.display='block';

	}
}

function changeNoKids(frm,index) {

	var inp=frm.elements['children['+index+']'];
	var noKids=inp.options[inp.selectedIndex].value;

	var divEl=document.getElementById('room'+index+'_ages');

	if (noKids>0) {
		divEl.style.display='block';
		for (var i=0;i<noKids;i++) {
			var el=frm.elements['child_age['+index+']['+i+']'];
			el.style.display='inline';
		}
		for (;i<3;i++) {
			var el=frm.elements['child_age['+index+']['+i+']'];
			el.style.display='none';
		}
	} else divEl.style.display='none';

}
