window.onload = lm_loading;
var obj_fld_in_day;
var obj_fld_in_month;
var obj_in_day;
var obj_in_month;
var obj_in_year;
var obj_in_cal;
var obj_fld_out_day;
var obj_fld_out_month;
var obj_out_day;
var obj_out_month;
var obj_out_year;
var objFRM;
var lng;
var set_lng;
var user;

function lm_loading()
{
	try{
	set_lm_dest();
	changeYear(document.form.DepartMonth);
	changeYear(document.form.DepartMonth_2,"Y");
	}catch(excp){}
	try{
	set_kymt_data();
	}catch(excp){}
}
function set_kymt_data()
{

	objFRM								= document.form;
	lng									= objFRM.Language.value;
	set_lng								= (lng == 'N')?"1":"2";
	obj_fld_in_day						= objFRM.set_day;
	obj_fld_in_month					= objFRM.set_month;
	obj_in_day							= objFRM.DepartDay;
	obj_in_month						= objFRM.DepartMonth;
	obj_in_year							= objFRM.DepartYear;
	obj_fld_out_day						= objFRM.set_day2;

	obj_fld_out_month					= objFRM.set_month2;
	obj_out_day							= objFRM.DepartDay_2;
	obj_out_month						= objFRM.DepartMonth_2;
	obj_out_year						= objFRM.DepartYear_2;
	user								= 1;

	arr_active							= (typeof(lm_arr_active) != 'undefined')?lm_arr_active:arr_active;

	try{
	set_date_fld("in");
	set_date_fld("out");
	}catch(excp){}

}
function resize_it()
{
	var height = 620;
	try {
		if(parent.document.getElementById('resultaat')){
		parent.document.getElementById('resultaat').style.height = height;
		}
		if(parent.document.getElementById('main_booking')){
		parent.document.getElementById('main_booking').style.height = height;
		}
		if(parent.document.getElementById('main_div')){
		parent.document.getElementById('main_div').style.height  = height + 35;
		}
	} catch( exception ) {
		// alert( exception );
	}
}
function Searching()
{
	var taal 	= document.form.Taal.value;
	try{
	var aantal	= document.getElementById('aantal_lm').innerHTML;
	}catch(excp){
	var aantal	= 1;
	}
	if(aantal > 10000){
		if(taal == "nl"){
		alert("Wij hebben meer dan 10000 aanbiedingen gevonden. Gelieve uw keuze te verfijnen.");
		}else{
		alert("Nous avons trouv&eacute; plus de 10000 offres. Veuillez raffiner votre choix.");
		}
	}else if(aantal <= 0){
		if(taal == "nl"){
		alert("Wij hebben geen aanbiedingen gevonden. Gelieve uw selectie aan te passen.");
		}else{
		alert("Nous n’avons trouvé aucune offre qui correspond ŕ votre demande. Vueillez modifier votre selection.");
		}
	}else{
	var get_action	= document.form.action.replace("?compact=Y","");
	try{
	document.form.action = get_action+((document.form.compact.checked == true)?"?compact=Y":"");
	}catch(excp){}
	document.form.submit();
	}
}
function reset_hotelcode()
{
	if(document.form.Hotelcode){
	document.form.Hotelcode.value='';
	}
}
function check_data()
{

  var Flen = document.form.length;
	var paramstring = "";
	for(i=0;i<Flen;i++){
		try{
		var value = document.form.elements[i].value.replace("&","-EN-");
		var Svalue = "";
		if(document.form.elements[i].name != '' && document.form.elements[i].type != 'checkbox' && document.form.elements[i].type != 'radio'){
		paramstring = paramstring + document.form.elements[i].name+"="+replace_js(value)+"&";
		}else if(document.form.elements[i].type == 'checkbox' || document.form.elements[i].type == 'radio'){
			if(document.form.elements[i].checked == true){
			paramstring = paramstring + document.form.elements[i].name+"="+replace_js(value)+"&";
			}
		}
		}catch(excp){}
	}

  try{
	var ajax = new Ajax( "/phpscripts/lm_search.php" , "POST" , paramstring + "ajax=yes", check_data_callback );
	ajax.go();
	}catch(excp){}
}
function check_data_callback( xml_req )
{
	var response 										= xml_req.responseText;
	var arr_response 									= response.split("OK|");
	document.getElementById('aantal_lm').innerHTML 		= arr_response[1]+((arr_response[2] == 1)?"":"<img src='/swimages/icons/error.png' alt=\""+arr_response[3]+"\" title=\""+arr_response[3]+"\">");
	document.getElementById('aantal_lm').style.color 	= ((arr_response[2] == 1)?"#FF8800":"#640019");
}
function replace_js(str)
{
	str = str.replace("=","|IS|");
	str = str.replace(">","|G|");
	str = str.replace("<","|K|");

return str;
}
function setSelect(el,div,what)
{
	if(what == '1'){
	el.style.width = 170;
	el.size = 9;
	document.getElementById(div).style.left = 0;
	document.getElementById(div).style.Zindex = 3;
	document.getElementById(div+"1").style.display = "none";
	}else if(what == '2'){
	el.style.width = 20;
	el.style.Zindex = 1;
	document.getElementById(div).style.left = 150;
	el.size = 1;
	document.getElementById(div+"1").style.display = "";
	}
}
function setAmin(el)
{
	var val = el.value;
	if(val.indexOf('van') != '-1' || val.indexOf('de') != '-1' || val == ''){
		el.value = '';
	}else if((val % 1) == '0' && el.name == 'van'){
		if((document.form.tot.value % 1) == '0'  && document.form.tot.value != ''){
		document.form.A_min.value = val + "," + document.form.tot.value;
		}else{
		document.form.A_min.value = val;
		}
		check_data();
	}
	if(val.indexOf('tot') != '-1' || val.indexOf('jusqu') != '-1' || val == ''){
		el.value = '';
	}else if((val % 1) == '0' && el.name == 'tot'){
		if((document.form.van.value % 1) == '0'){
		document.form.A_min.value = document.form.van.value + "," + val;
		}else{
		document.form.A_min.value = val;
		}
		check_data();
	}
	if(val == ''){
		document.form.A_min.value = "";
		check_data();
	}
}
function changeYear(el,chk)
{
	var val 	= el.value;
	var name	= el.name;

	var dateM 	= theDate.getMonth() + 1;
	var thisYear= theDate.getFullYear();
	var nextYear= theDate.getFullYear() + 1;

	if(parseFloat(val) < parseFloat(dateM)){
		eval("document.form."+name.replace("Month","Year")+".value = '"+nextYear+"'");
	}else{
		eval("document.form."+name.replace("Month","Year")+".value = '"+thisYear+"'");
	}


	(chk == 'Y')?check_data():"";
}
function set_lm_dest()
{
	var taal										= (document.form.Taal.value == 'nl')?"":"_fr";
	var dest_div									= document.getElementById('dest_div');
	var destination									= document.createElement('select');
	destination.name	 							= 'dest_resort';
	destination.id		 							= 'dest_resort';
	destination.style.width 						= '176px';
	var arr_dest									= new Array();
	var opt											= (taal == '')?new Option("Kies Bestemming","",false,false):new Option("Choisissez destination","",false,false);
	destination.options[0] 							= opt;
	var teller										= 1;
	if(location.href.indexOf('kinderkorting.htm') != '-1' || document.getElementById('info').value.indexOf('kymt') != '-1' || document.getElementById('info').value.indexOf('jymt') != '-1' || document.getElementById('info').value.indexOf('promo_overland') != '-1'){
		if(document.getElementById('info').value.indexOf('promo_overland') != '-1'){
		var arr_overall								= eval("arr_overall_"+document.getElementById('Season').value+document.getElementById('User').value+taal);
		}else{
		var arr_overall								= eval("arr_overall_"+document.getElementById('User').value+"_"+document.getElementById('Season').value+taal);
		}

		for(var list in arr_overall){
			var set_resorts							= "";
			for(i=4;i<arr_overall[list].length;i++){
			set_resorts								+= arr_overall[list][i][0]+",";
			}
			var opt									= new Option(arr_overall[list][((taal == '')?2:3)],set_resorts.substr(0,(set_resorts.length - 1)),false,false);
			destination.options[teller] 			= opt;
			destination.options[teller].className 	= 'bt';
			teller++;
			for(i=4;i<arr_overall[list].length;i++){
			var opt									= new Option("-  "+arr_overall[list][i][((taal == '')?1:2)],arr_overall[list][i][0],false,false);
			opt.style.paddingLeft					= "10px";
			destination.options[teller] 			= opt;
			teller++;
			}
		}
	}else{
	destination.onchange							= function(){check_data();set_LRC(this);};
		for(var LM in arr_overall_L_M){
			if(arr_dest[arr_overall_L_M[LM]['land_code']] != 'Y'){
			var opt										= new Option(arr_overall_L_M[LM]['landO'+taal],arr_overall_L_M[LM]['land_code']+"_1",false,false);
			destination.options[teller] 				= opt;
			destination.options[teller].className 		= 'bt';
			arr_dest[arr_overall_L_M[LM]['land_code']] 	= "Y";
			teller++;
			}
			var opt										= new Option("-  "+arr_overall_L_M[LM]['regioO'+taal],arr_overall_L_M[LM]['land_code']+"_"+arr_overall_L_M[LM]['regio_code'],false,false);
			destination.options[teller] 				= opt;
			destination.style.paddingLeft 				= "10px";
			teller++;
		}
	}
	try{destination.value								= dest_resort;}catch(excp){}
	try{dest_div.appendChild(destination);}catch(excp){}
}
function createCookie(name,value,days)
{
	if (days){
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}else{
		var expires = "";
	}
	document.cookie = name+"="+value+expires+"; path=/";
}
function set_LRC(el)
{
	var dest										= document.getElementById('dest_resort').options;
	var destLen										= dest.length;
	var selOpt										= el.firstChild;
	var selTxt;
	for(d=0;d<destLen;d++){
		if(dest[d].value == el.value){
		selTxt										= selOpt.text;
		}
		selOpt										= selOpt.nextSibling;
	}
	if(el.value.indexOf("_1") != '-1'){
	createCookie("LM_dest_resort",selTxt,"");
	}else{
	createCookie("LM_dest_resort","","");
	}
}
function set_date_fld(set_io)
{
  var obj_day                     = eval("obj_fld_"+set_io+"_day");
	var obj_month										= eval("obj_fld_"+set_io+"_month");
  var obj_io_day                  = eval("obj_"+set_io+"_day");
  var obj_io_month                = eval("obj_"+set_io+"_month");
  var obj_io_year                 = eval("obj_"+set_io+"_year");

  if(document.getElementById('info').value.indexOf('kymt') != '-1' || document.getElementById('info').value.indexOf('jymt') != '-1')
  {
    var flexdate                    = new Date();
    var curdate                     = new Date(flexdate.getFullYear(),flexdate.getMonth(),flexdate.getDate() + 56);
  }
  else
  {
    var curdate                     = new Date();
  }

//check om te zien of we morgen nogaltijd in dezelfde maand zitten, zoniet word vandaag morgen om zo geen volledig doorstreepte maand te krijgen.
	var nextday											= new Date (curdate.getFullYear(), curdate.getMonth(), parseInt(curdate.getDate()) + 1);
	curdate												= (curdate.getMonth() < nextday.getMonth())?nextday:curdate;

//set month

  var opt_month                   = new Option(((lng == "N" || lng == 1)?"maand":"mois"),"",false,false);
	obj_month.options[0]								= opt_month;
	var set_option_month								= 1;

  for(m=0;m<=11;m++)
  {

 // Vincent : controle overgenomen van global_book.js
 // deze lijn toegevoegd
    var check_month             = (((curdate.getMonth() + m) > 11)?((curdate.getMonth() + m) - 12):(curdate.getMonth() + m));
    var add_kymt_flex			= ((location.href.indexOf("kinderkorting") != '-1' || location.href.indexOf("reduction-enfants") != '-1')?56:0);
    var set_date                = new Date(curdate.getFullYear(), (curdate.getMonth() + m), ((curdate.getDate() == 31 && m == 0)?curdate.getDate():((curdate.getDate() < arr_days_month[check_month])?(curdate.getDate() + add_kymt_flex):1)));
//  var set_date                = new Date(curdate.getFullYear(), (curdate.getMonth() + m), ((curdate.getDate() == 31 && m == 0)?curdate.getDate():((curdate.getDate() < 31)?curdate.getDate():1)));

    if(set_date > arr_active[user]['S'] && set_date <= arr_active[user]['E'])
    {
      var set_year                 = set_date.getFullYear() - 2000;

      var opt_month                 = new Option(arr_month[set_date.getMonth()]['m'+set_lng]+" '"+set_year,(set_date.getMonth() + 1)+"|"+set_date.getFullYear(),false,false);
      obj_month.options[set_option_month]       = opt_month;
      obj_month.options[set_option_month].selected  = (add_zero((set_date.getMonth() + 1),2)+" '"+set_year == obj_io_month.value+" '"+(obj_io_year.value - 2000))?true:false;
      set_option_month++;
		}
	}



  obj_month.onchange = function()  {
														var arr 				= this.value.split("|");
														obj_io_day.value 		= (arr == '')?"":obj_io_day.value;
														obj_io_month.value 		= (arr == '')?"":add_zero(arr[0],2);
														obj_io_year.value 		= (arr == '')?"":arr[1];
														set_date_fld(set_io);
														(location.href.indexOf('lm_search') != '-1' || location.href.indexOf('lastminutes') != '-1')?check_data():"";
														};

//set day
	var arr_cmonth										= obj_month.value.split("|");
	var set_run											= 0;
	var opt_day											= new Option(((lng == "N" || lng == 1)?"dag":"jour"),"",false,false);
	var day_count										= 1;
	obj_day.options.length 								= 0;
	obj_day.options[0]									= opt_day;
	for(d=0;d<=31;d++){
		if(arr_cmonth == ''){
			var opt_day									= new Option(d+1,d+1,false,false);
			obj_day.options[(d+1)]						= opt_day;
				obj_day.options[(d+1)].selected				= (d+1 == obj_io_day.value)?true:false;
				if(d == 30){
				break;
				}
		}else{
			var set_day									= new Date(arr_cmonth[1], (arr_cmonth[0]-  1),(d + 1));
			if(set_day > curdate){
				var opt_day								= new Option(arr_day[set_day.getDay()+"D"]['m'+set_lng]+" "+set_day.getDate(),set_day.getDate(),false,false);
				if(set_run > set_day.getDate()){
				break;
				}
				obj_day.options[day_count]				= opt_day;
				obj_day.options[day_count].selected		= (set_day.getDate() == add_zero(obj_io_day.value,2))?true:false;
				set_run									= set_day.getDate()
				day_count++;
			}
		}
	}
	obj_day.onchange									= function(){
														obj_io_day.value 	= (parseInt(obj_day.value));
														set_date_fld(set_io);
														(location.href.indexOf('lm_search') != '-1' || location.href.indexOf('lastminutes') != '-1')?check_data():"";
														};
	//old version
//var set_dur											= ((obj_out_day.value != '')?0:((user == 1 || user == 3)?8:2));
	//new version: indien waarde niet leeg is dan standaard duur op 2 zetten (want later dur -1, 0-1 => ret was altijd dag voor out)
	var set_dur											= ((obj_out_day.value != '')?2:((user == 1 || user == 3)?8:2));

//indien out dag leeg en men kiest een incheck dag of als de outcheck dag kleiner is dan de incheck dag
	var out_date										= new Date(obj_in_year.value,obj_in_month.value - 1,parseFloat(obj_in_day.value) + (parseFloat(set_dur) - 1));
	var chk_out_date									= new Date(obj_out_year.value,obj_out_month.value - 1,parseFloat(obj_out_day.value));
	if(set_io == "in" && ((obj_out_day.value == '' && parseFloat(obj_in_day.value) > 0) || (out_date > chk_out_date && obj_in_year.value != "" && obj_in_month.value != "" && obj_in_day.value != "" && parseFloat(obj_in_day.value) > 0))){
	obj_out_day.value 									= add_zero(out_date.getDate(),2);
	obj_out_month.value 								= add_zero((out_date.getMonth() + 1),2);
	obj_out_year.value 									= out_date.getFullYear();
	set_date_fld("out");
	}else if(set_io == "in" && (obj_out_day.value == '' && obj_in_month.value == '' && obj_in_day.value != '')){
	obj_out_day.value									= add_zero(((parseFloat(obj_in_day.value) + 1) > 31)?1:(parseFloat(obj_in_day.value) + 1),2);
	}
//indien out maand leeg is of kleiner dan de incheck maand
	try{
		if(set_io == "in" && (obj_out_month.value == '' || obj_out_year.value+""+obj_out_month.value < obj_io_year.value+""+obj_io_month.value) && set_cal_sel == ''){
		obj_out_month.value 								= obj_io_month.value;
		obj_out_year.value 									= obj_io_year.value;
		set_date_fld("out");
		}
	}catch(excp){}
}
function get_lms(key)
{
	var arr_root_key											= key.split("|");
	var set_frm													= document.form;
	document.getElementById('dest_resort').options[0].selected	= true;
	for(i=0;i<set_frm.elements.length;i++){
		if(set_frm.elements[i].name.indexOf("airport") != '-1'){
		set_frm.elements[i].checked								= true;
		}
	}

	for(var k in arr_root_key){
		var arr_key													= arr_root_key[k].split("-");
		document.form.van.value										= "";
		if(arr_key[0] == 'D'){
			var arr_dest_resort										= arr_key[1].split("#");
			var check_dest											= (typeof(arr_dest_resort[1]) != 'undefined')?arr_dest_resort[1]:arr_dest_resort[0];
			for(i=0;i<document.getElementById('dest_resort').options.length;i++){
				if(document.getElementById('dest_resort').options[i].value.indexOf(check_dest) != '-1'){
				document.getElementById('dest_resort').options[i].selected	= true;
				break;
				}
			}
		}else if(arr_key[0] == 'A'){
			var airport												= arr_key[1];
			for(i=0;i<set_frm.elements.length;i++){
				if(set_frm.elements[i].name.indexOf("airport") != '-1'){
				set_frm.elements[i].checked							= ((set_frm.elements[i].value.indexOf(airport) != '-1')?true:false);
				}
			}
		}else if(arr_key[0] == 'P'){
			var arr_price											= arr_key[1].split("#");
			document.form.van.value									= arr_price[1];
		}
	}
	document.form.submit();
}
function set_Pax()
{
	try{
	var Pax 		= document.form.Pax.value;
	var Child 		= document.form.Child.value;
		if(document.form.Infant){
		var Infant		= document.form.Infant.value;
		createCookie("Infant",Infant,"");
		}
	createCookie("Pax",Pax,"");
	createCookie("Child",Child,"");
	}catch(excp){}
}

