var height_top = 180;
var height_div = 100;

function makeDate(date)
{
	var dag = date.substring(6,8);
	var maand = date.substring(4,6);
	var jaar = date.substring(0,4);
	var date = dag + "-" + maand + "-" + jaar;
	
	return date;		
}

function mkDate_Reverse(date)
{
	var dag = date.substring(0,2);
	var maand = date.substring(3,5);
	var jaar = date.substring(6,10);
	var date = jaar +  maand + dag;
	return date;
}

/*
function openKalender()
{
	document.getElementById("kalender").style.display = "block";
} */

function closeKalender(reloaden)
{
	var reloaden = reloaden;
	document.getElementById("kalender").style.display = "none";
	document.getElementById("kalender").innerHTML = "";
	document.getElementById("kalender").style.width = "0px";
	height_div = 100;
	
	//window.alert(reloaden);
	
	if(document.getElementById("search_reloaden"))
	{		
		var search_reloaden = document.getElementById("search_reloaden").value;
		//window.alert
	}
	
	if(search_reloaden == "yes" && reloaden == "yes" && document.getElementById("search_vertrekdatum").innerHTML != "00-00-0000" && document.getElementById("search_aankomsdatum").innerHTML != "00-00-0000")
	{
		window.location.reload();
	}
	else if(search_reloaden == "beschikbaarheid_tonen" && reloaden == "yes" && document.getElementById("search_vertrekdatum").innerHTML != "00-00-0000" && document.getElementById("search_aankomsdatum").innerHTML != "00-00-0000" && document.getElementById("search_reloaden_city").value != "")
	{
		
		if(document.getElementById("https"))
		{
			window.location.href = "http://www.nosonis.com/hotels/beschikbaarheid_tonen.php?city=" + document.getElementById("search_reloaden_city").value;
		}
		else
		{		
			window.location.href = "beschikbaarheid_tonen.php?city=" + document.getElementById("search_reloaden_city").value;
		}
	}
}

function startKalender()
{
	document.getElementById("kalender").style.width = height_div + "px";
	document.getElementById("kalender").style.display = "block";

	if(height_div < 580)
	{		
		height_div = height_div + 70;
		setTimeout("startKalender()", 20);		
	}
	else
	{
		openKalender();	
	}

}

function changeTlk(lang)
{
	if(document.getElementById("taal_keuze").innerHTML == "")
	{
		document.getElementById("taal_keuze").innerHTML = lang;
	}
	else
	{
		document.getElementById("taal_keuze").innerHTML = "";
	}
}

function createXMLHttpRequest() // Zorgt dat AJAX werkt met explorer of andere browsers
{
	if(window.ActiveXObject)
	{
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else if(window.XMLHttpRequest)
	{
		xmlHttp = new XMLHttpRequest();
	}
}

function handleStateChange_submitSuggestion() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			var country_id = document.getElementById("hidden_country_id").value;
			document.getElementById("div_search_suggestions_" + country_id).style.height = "auto";
			document.getElementById("div_search_suggestions_" + country_id).style.display = "block";
			document.getElementById("div_search_suggestions_" + country_id).innerHTML=xmlHttp.responseText;
		}
	}
}

function submitSuggestion(country_id)
{			
	document.getElementById("hidden_country_id").value = country_id;
	
	var search_value = document.getElementById("searchbox_" + country_id).value;		

	var url_to_open = "/hotels/ophalen_suggestions.php";
	
	var queryString = "search_value=" + search_value + "&country_id=" + country_id;

	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_submitSuggestion;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);
	
}

function placecityinSearch(src)
{
	var country_id = document.getElementById("hidden_country_id").value;
	document.getElementById("searchbox_" + country_id).value = document.getElementById(src.id).innerHTML;	
}

function handleStateChange_openKalender() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			document.getElementById("kalender").innerHTML = xmlHttp.responseText;
			
			//window.alert(document.getElementById("hidden_kalender_aankomstdatum_id").value);
			if(document.getElementById("hidden_kalender_aankomstdatum_id").value != "")
			{
				document.getElementById("infowarning_kieseendatum").innerHTML = "Kies een vertrekdatum:";
			}
		}		
	}		
}

function openKalender(step)
{		
	
	var maand = document.getElementById("hidden_kalender_start_month").value;
	var jaar = document.getElementById("hidden_kalender_start_year").value;
	
	if(step == "next")
	{
		maand = parseInt(maand) + 1;
		
		if(maand == 13)
		{
			maand = 1;
			jaar = parseInt(jaar) + 1;
		}
	}
	else if(step == "last")
	{
		maand = parseInt(maand) - 1;
		
		if(maand == 0)
		{
			maand = 12;
			jaar = parseInt(jaar) - 1;
		}
	}
	
	//window.alert(maand);
	
	document.getElementById("hidden_kalender_start_month").value = maand;
	document.getElementById("hidden_kalender_start_year").value = jaar;
	
	//document.getElementById("infowarning_kieseendatum").innerHTML = "Kies een aankomstdatum:";
	//document.getElementById("infowarning_kieseendatum").style.display = "block";
	
	var url_to_open = "/hotels/kalender.php";
	
	var queryString = "&jaar=" + jaar + "&maand=" + maand;		
	
	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_openKalender;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);
}

function handleStateChange_destroydateSessions() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			//window.alert(xmlHttp.responseText);		
		}
		
	}		
}


function deletestyleKalender()
{
		var aantal_dagen = (parseInt(document.getElementById("hidden_vertrekdatum_id").value) - parseInt(document.getElementById("hidden_aankomstdatum_id").value)) + 1;
		var date_id = document.getElementById("hidden_aankomstdatum_id").value;			
		
		//window.alert(document.getElementById("hidden_aankomstdatum_id").value);
		
		if(document.getElementById("hidden_aankomstdatum_id").value != "")
		{			
			document.getElementById(date_id).className = "td_kalender_beschikbaar";
		}
	
		for(i=0; i<aantal_dagen; i++)
		{			
			document.getElementById(date_id).className = "td_kalender_beschikbaar";
			date_id++;	
		}	
		
		document.getElementById("hidden_aankomstdatum_id").value = "";
		document.getElementById("hidden_kalender_aankomstdatum_id").value = "";
		document.getElementById("hidden_vertrekdatum_id").value = "";
		document.getElementById("infowarning_kalender").style.display = "none";
		document.getElementById("search_aankomsdatum").innerHTML = "00-00-0000";
		document.getElementById("search_vertrekdatum").innerHTML = "00-00-0000";
		document.getElementById("td_search_aankomstdatum").innerHTML = "00-00-0000";
		document.getElementById("td_search_vertrekdatum").innerHTML = "00-00-0000";
		document.getElementById("infowarning_kieseendatum").innerHTML = "Kies een aankomstdatum:";
		document.getElementById("infowarning_kieseendatum").style.display = "block";
		
		var url_to_open = "/hotels/destroy_date_sessions.php";
		
		createXMLHttpRequest();	
		xmlHttp.open("POST", url_to_open, true);
		xmlHttp.onreadystatechange = handleStateChange_destroydateSessions;
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
		xmlHttp.send(null);
}


function opendatum(src)
{		

	var date_id = parseInt(src.id);
	var datum = src.title;
	
	//alert(document.getElementById("search_aankomsdatum").innerHTML);
	//alert(document.getElementById("hidden_aankomstdatum_id").value);
	
	if(document.getElementById("search_aankomsdatum").innerHTML != "00-00-0000" && document.getElementById("hidden_aankomstdatum_id").value == "" && document.getElementById("search_vertrekdatum").innerHTML == "00-00-0000")
	{
		var datum_aankomstdatum = mkDate_Reverse(document.getElementById("search_aankomsdatum").innerHTML);
		var date_id_aankomstdatum = document.getElementById("hidden_kalender_aankomstdatum_id").value;
		deletestyleKalender();
		
		document.getElementById(date_id_aankomstdatum).className = "td_kalender_selecteerd";
		document.getElementById("td_search_aankomstdatum").innerHTML = makeDate(datum_aankomstdatum);
		document.getElementById("search_aankomsdatum").innerHTML = makeDate(datum_aankomstdatum);
		document.getElementById("hidden_aankomstdatum_id").value = date_id_aankomstdatum;
		document.getElementById("hidden_vertrekdatum_id").value = "";
		
		if(parseInt(datum_aankomstdatum) < parseInt(datum))
		{
			var aantal_dagen = date_id - parseInt(document.getElementById("hidden_aankomstdatum_id").value);
			document.getElementById("td_search_vertrekdatum").innerHTML = makeDate(datum);
			document.getElementById("search_vertrekdatum").innerHTML = makeDate(datum);
			document.getElementById("hidden_vertrekdatum_id").value = date_id;
			document.getElementById("infowarning_kalender").style.display = "block";
			
			for(i=0; i<aantal_dagen; i++)
			{
				document.getElementById(date_id).className = "td_kalender_selecteerd";	
				date_id = date_id - 1;
			}
			
			//alert(document.getElementById("hidden_aankomstdatum_id").value);
			
			var aankomstdatum = document.getElementById(document.getElementById("hidden_aankomstdatum_id").value).title;
			var vertrekdatum = datum;
			
			document.getElementById("infowarning_kieseendatum").innerHTML = "";
			document.getElementById("infowarning_kieseendatum").style.display = "none";
			
			submitSearch_dates(aankomstdatum, vertrekdatum);
		}
		else
		{
			deletestyleKalender();
		}
	}
	else if(document.getElementById("hidden_aankomstdatum_id").value == "")
	{		
		deletestyleKalender();
		document.getElementById(date_id).className = "td_kalender_selecteerd";
		document.getElementById("td_search_aankomstdatum").innerHTML = makeDate(datum);
		document.getElementById("search_aankomsdatum").innerHTML = makeDate(datum);
		document.getElementById("hidden_aankomstdatum_id").value = date_id;
		document.getElementById("hidden_kalender_aankomstdatum_id").value = date_id;
		document.getElementById("hidden_vertrekdatum_id").value = "";	
		document.getElementById("infowarning_kieseendatum").innerHTML = "Kies een vertrekdatum:";
		document.getElementById("infowarning_kieseendatum").style.display = "block";
	}
	else if(document.getElementById("hidden_vertrekdatum_id").value == "")
	{
		var aantaldagen = parseInt(date_id) - parseInt(document.getElementById("hidden_aankomstdatum_id").value);
		
		if(parseInt(aantaldagen) > 7)
		{
			window.alert("u kunt maximaal 7 nachten boeken");
		}
		else if(date_id > parseInt(document.getElementById("hidden_aankomstdatum_id").value))
		{
			var aantal_dagen = date_id - parseInt(document.getElementById("hidden_aankomstdatum_id").value);
			document.getElementById("td_search_vertrekdatum").innerHTML = makeDate(datum);
			document.getElementById("search_vertrekdatum").innerHTML = makeDate(datum);
			document.getElementById("hidden_vertrekdatum_id").value = date_id;
			document.getElementById("infowarning_kalender").style.display = "block";
			
			for(i=0; i<aantal_dagen; i++)
			{
				document.getElementById(date_id).className = "td_kalender_selecteerd";	
				date_id = date_id - 1;
			}
			
			var aankomstdatum = document.getElementById(document.getElementById("hidden_aankomstdatum_id").value).title;
			var vertrekdatum = datum;
			
			document.getElementById("infowarning_kieseendatum").innerHTML = "";
			document.getElementById("infowarning_kieseendatum").style.display = "none";
			
			submitSearch_dates(aankomstdatum, vertrekdatum);
		}
		else
		{
			deletestyleKalender();
		}
	}
	else
	{
		deletestyleKalender();
	}
}

function handleStateChange_searchReturn_dates() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			//document.getElementById("zoekresultaten_dates_noresults").style.display = "none";
			//document.getElementById("zoekresultaten_dates").style.display = "block";
			//document.getElementById("zoekresultaten_dates").innerHTML = xmlHttp.responseText;
			//document.getElementById("kalender").style.height = "auto";
		}
	}
}

function submitSearch_dates(aankomstdatum, vertrekdatum)
{			

	//document.getElementById("kalender").innerHTML="";	// Maakt de workspace voor zekerheid helemaal leeg

	var url_to_open = "/hotels/opslaan_search_dates_in_sessions.php";
	
	var queryString = "aankomstdatum=" + aankomstdatum + "&vertrekdatum=" + vertrekdatum;

	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_searchReturn_dates;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);
	
}

function handleStateChange_openSearchcountry() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			var country_id = document.getElementById("hidden_country_id").value; 
			document.getElementById("hidden_search_" + country_id).innerHTML = xmlHttp.responseText;			
		}
	}
}

function openSearchcountry(country)
{	
	closeKalender();
	
	if(document.getElementById("hidden_search_" + country).style.display == "block")
	{
		document.getElementById("hidden_search_" + country).style.display = "none";
		document.getElementById("search_" + country).className = "div_search_bestemming";
		document.getElementById("hidden_country_id").value = "";
	}
	else
	{
		document.getElementById("hidden_country_id").value = country;
		
		var arr_countries = new Array("be","de","fr","it","nl","at","po","es","ch"); 
		
		for(i=0; i<9; i++)
		{
			document.getElementById("search_" + arr_countries[i]).className = "div_search_bestemming";
			document.getElementById("hidden_search_" + arr_countries[i]).style.display = "none";
			document.getElementById("hidden_search_" + arr_countries[i]).innerHTML = "";
		}
		
		document.getElementById("search_" + country).className = "div_search_bestemming_selected";
		document.getElementById("hidden_search_" + country).style.display = "block";
		
		var url_to_open = "/hotels/hidden_country_search.php";
		
		var queryString = "country_id=" + country;
		
		createXMLHttpRequest();	
		xmlHttp.open("POST", url_to_open, true);
		xmlHttp.onreadystatechange = handleStateChange_openSearchcountry;
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
		xmlHttp.send(queryString);
	}
}

function handleStateChange_opensearchonProvince() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			document.getElementById("kalender").innerHTML = xmlHttp.responseText;
			document.getElementById("kalender").style.height = "auto";
		}		
	}		
}

function opensearchonProvince(country)
{
	var url_to_open = "/hotels/openprovincesearch.php";
	
	var queryString = "country_id=" + country;
	
	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_opensearchonProvince;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);	
}

function handleStateChange_saveAantallen() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			if(document.getElementById("search_reloaden") && document.getElementById("search_reloaden").value == "yes")
			{		
				window.location.reload();
				//window.alert
			}			
		}		
	}		
}

function saveAantallen(type)
{
	var url_to_open = "/hotels/opslaan_search_aantallen_in_sessions.php";
	
	var aantal = document.getElementById("number_" + type).value;
	var session = "search_no_" + type;
	
	var queryString = "session=" + session + "&aantal=" + aantal;
	
	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_saveAantallen;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);
}

function opensearchAvailabilty(country)
{
	var city_string = document.getElementById("searchbox_" + country).value;
	
	if(document.getElementById("search_aankomsdatum").innerHTML == "00-00-0000" || document.getElementById("search_vertrekdatum").innerHTML == "00-00-0000")
	{
		if(document.getElementById("https"))
		{
			window.location.href = "http://www.nosonis.com/hotels/hotels_tonen.php?townname=" + city_string;
		}
		else
		{
			window.location.href = "/hotels/hotels_tonen.php?townname=" + city_string;
		}
	}
	else
	{
		if(document.getElementById("https"))
		{
			window.location.href = "http://www.nosonis.com/hotels/beschikbaarheid_tonen.php?city=" + city_string;
		}
		else
		{
			window.location.href = "/hotels/beschikbaarheid_tonen.php?city=" + city_string;
		}
			
	}
}

function logintoFb()
{
	var boeker_inlognaam = document.getElementById("fb_inlognaam").value;
	var boeker_wachtwoord = document.getElementById("fb_wachtwoord").value;																		
				
	var url_to_open = "/hotels/fb_inlog.php";

	var queryString = "boeker_inlognaam=" + boeker_inlognaam + "&boeker_wachtwoord=" + boeker_wachtwoord;
		
	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_logintoFb;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(queryString);
								
}					

function handleStateChange_logintoFb() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			//window.alert(xmlHttp.responseText);
			document.getElementById("div_frequent_bookers_login").innerHTML = xmlHttp.responseText;
		}	
	}
}

	
function fb_uitloggen()
{			
	var url_to_open = "/hotels/fb_uitloggen.php";

	//var queryString = "boeker_inlognaam=" + boeker_inlognaam + "&boeker_wachtwoord=" + boeker_wachtwoord;
		
	createXMLHttpRequest();	
	xmlHttp.open("POST", url_to_open, true);
	xmlHttp.onreadystatechange = handleStateChange_logintoFb;
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
	xmlHttp.send(null);
}

function handleStateChange_fb_uitloggen() // controleert de dataoverdracht is dit ok, dan wordt de opdracht opgehaald
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			//window.alert(xmlHttp.responseText);
			document.getElementById("div_frequent_bookers_login").innerHTML = xmlHttp.responseText;
		}	
	}
}

function openCity(towncode,townname)
{
	if(document.getElementById("search_aankomsdatum").innerHTML == "00-00-0000" || document.getElementById("search_vertrekdatum").innerHTML == "00-00-0000")
	{
		if(document.getElementById("https"))
		{
			window.location.href = "http://www.nosonis.com/hotels/hotels_tonen.php?towncode=" + towncode + "&townname=" + townname;
		}
		else
		{
			window.location.href = "/hotels/hotels_tonen.php?towncode=" + towncode + "&townname=" + townname;
		}		
	}
	else
	{
		if(document.getElementById("https"))
		{
			window.location.href = "http://www.nononis.com/hotels/beschikbaarheid_tonen.php?city=" + townname;
		}
		else
		{
			window.location.href = "/hotels/beschikbaarheid_tonen.php?city=" + townname;
		}
	}
}

function gotolistofCitiesofcountry(country)
{
	if(document.getElementById("https"))
	{
		window.location.href = "http://www.nosonis.com/hotels/steden_tonen.php?country=" + country;
	}
	else
	{
		window.location.href = "/hotels/steden_tonen.php?country=" + country;
	}
}
