var choosedProduct="Pauschal";

function addEnter (e) {
  if (!e)
    e = window.event;
    
    
  if (e.keyCode == 13) {  
  	if (e.target == null || e.target.id!="Schnellsuche-Reiseziel" && e.target.id!="Schnellsuche-Service" && e.target.id!="newsletter_input") {
  		if (choosedProduct=="DP")
  			document.oss_dp.submit();
  		else if (choosedProduct=="Hotel")
  			document.oss_hotel.submit();	
  		else if (choosedProduct=="Flight")
  			document.oss_flight.submit();
  		else if (choosedProduct=="Car")
  			document.oss_car.submit();
			else if (choosedProduct=="Pauschal") {
				Calendar.addDatesToForm('oss_pau');
				document.oss_pau.submit();
			}	
		}			
  }	
}
document.onkeypress = addEnter;


/*
function closeDivers(e) {
	console.debug(e.target);
}	
document.onclick = closeDivers;
*/

function getSelectedValue(comp) {
	for (var i=0; comp.length; i++) {
			if (comp[i].checked)
				return comp[i].value;
	}		
}

function createLink(formName) {	
	var form = eval('document.'+formName);
	
	if (!checkInputHP(form))
		return;
		
	var link = "";
	Calendar.addDatesToForm(formName);			
	if (choosedProduct == "DP") 		
		link = "/de_DE/lmn2/travel/dp/search.do?";
	else if (choosedProduct == "Hotel") 
		link = "/de_DE/lmn2/travel/hotel/searchRemote.do?";
	else if (choosedProduct == "Flight") 
		{
			if (form.flexibleSearch.checked == false)
				link = "/de_DE/lmn2/travel/flight/searchRemote.do?";
			else
				link = "/de_DE/lmn2/travel/flight/search.do?";
		}
	else if (choosedProduct == "Car")
		link = "/de_DE/lmn2/travel/car/search.do?";
	else if (choosedProduct == "Pauschal")
		link="http://xxl.lastminute.de/suchen.asp?"

	if (choosedProduct != "Pauschal")							
	{
		if (document.getElementById('depDate') != null)
			link += "depDate=" + form.depDate.value;
		if (document.getElementById('retDate') != null)	
			link += "&retDate=" + form.retDate.value;

		if (form.depAirport != null)		
			link += "&depAirport=" + form.depAirport.value;
		if (form.destName != null)
			link += "&destName=" + form.destName.value;	
		if (form.adultAmount != null)	
			link += "&adultAmount=" + form.adultAmount.value;	
		if (form.flSearchType != null)
			link += "&flightType=" + getSelectedValue(form.flSearchType);
		if (form.kidAge != null) {
			for (var i=0;i<form.kidAge.length;i++) 
			{
				link += "&kidAge=" + form.kidAge[i].value 
				if (form.kidAge[i].value > -1)
			    link += "&kid" + (i+1) + "room=1&";
			}	
		}	
		
		if (form.category != null)	
			link += "&hotelCategory=" + form.category.value;				
		if (formName == "oss_dp" || formName == "oss_hotel") 
		{
			link += "&hotelSelected=on";
			link += "&roomCount=1";
			link += "&adultsInRoom=" + form.adultAmount.value;
			link += "&catering=ALL";
		}	
		if (formName == "oss_dp" || formName == "oss_flight") 
			link += "&flightSelected=on";
		if (formName == "oss_flight" && form.flexibleSearch.checked)
			link += "&flexibleSearch=on";	
			
		if ((formName == "oss_flight" && form.flexibleSearch.checked == false) || formName == "oss_hotel" )
			link += "&remoteRequest=true";  	
		else
			link += "&remoteRequest=false";
	}	
	else
	{
        console.debug(dojo.formToObject(form));
		if (document.getElementById('depDate') != null)
			link += "ABDATUM=" + form.depDate.value;
		if (document.getElementById('retDate') != null)	
			link += "&REDATUM=" + form.retDate.value;					
		if (form.ABFLUG != null)		
			link += "&ABFLUG=" + form.ABFLUG.value;
		if (form.ZIEL != null)
			link += "&ZIEL=" + form.ZIEL.value;	
		if (form.PERS != null)	
			link += "&PERS=" + form.PERS.value;	
		if (form.A1 != null)	
			link += "&A1=" + form.A1.value;
		if (form.A2 != null)	
			link += "&A2=" + form.A2.value;
		if (form.A3 != null)	
			link += "&A3=" + form.A3.value;	
		if (form.BABY != null)	
			link += "&BABY=" + form.BABY.value;	
		if (form.KIND != null)	                                                
			link += "&KIND=" + form.KIND.value;							
	}
    console.debug(link);
		
//	window.location.href = link;
}	

function handleMatrix(comp) {
	
	if (comp.checked) {
		document.getElementById("flSearchType1").checked="checked";	
		document.getElementById("flSearchType1").disabled = true;
		document.getElementById("flSearchType2").disabled = true;
	}	else {
		document.getElementById("flSearchType1").disabled = false;
		document.getElementById("flSearchType2").disabled = false;
	}	
	
}	
	
			


function checkInputHP(vForm){

	//If no hotel we could searhc for the same date.
	
	var includeHotel = false;
	var includeFlight = false;
	
	
	if(vForm.hotelSelected && vForm.hotelSelected.checked){
		includeHotel = true;
	}
	if(vForm.flightSelected && vForm.flightSelected.checked){
		includeFlight = true;
	}

	if(vForm.carSelected && vForm.carSelected.checked){
		if ( ! (includeHotel || includeFlight) ) {
				alert("Bitte wählen Sie eine weitere Leistung (Flug oder Hotel) aus.");
				return false;
		}
	} else if (vForm.carSelected){
			if ( ! (includeHotel || includeFlight) ) {
				alert("Bitte wählen Sie Ihr gewünschtes Produkt aus.");
				return false;
			}
	}
	
	
	//destination (dp)
	if(vForm.destName){
		if(vForm.destName.value==""){
			alert("Bitte ein Reiseziel angeben!");
			return false;
		}
	}
	
	//departures
	if(vForm.depAirport){
		if(vForm.depAirport.value==""){
			alert("Bitte einen Abflughafen angeben!");
			return false;
		}
	}
	
	
	//date check
	if(!checkDepartureReturnTwo(document.getElementById('depDate').value,document.getElementById('retDate').value, includeHotel)) {
		alert("Das Abflugdatum muss vor dem Rückflugdatum liegen!");
		return false;
	}		
	//duration
	if(vForm.duration && vForm.duration.value!=''){
		if(!durationMatches(document.getElementById('depDate').value,document.getElementById('retDate').value,vForm.duration.value)){
			alert('Die Reisedauer liegt nicht innerhalb des gewählten Zeitraums für Abflug und Rückflug. Bitte passen Sie die Daten an!');
			return false;
		}
	}
	//room allocation (dp)
	if(vForm.roomCount && !checkRoomAllocation()){
		alert("Die Summe der Erwachsenen in der Zimmerzuordnung stimmt nicht mit der Anzahl der reisenden Erwachsenen überein!");
		return false;	
	}
	//services count (dp)
	
	var servCount = 0;
	var dp = false;
	var flightSelected = false;
	
	if (vForm.hotelSelected){
		dp = true;
		if (vForm.hotelSelected.checked){
			servCount = servCount +1;
		}
	}	
	if (vForm.carSelected){
		dp = true;
		if (vForm.carSelected.checked){
			servCount = servCount +1;
		}
	}	
	if (vForm.flightSelected){
		dp = true;
		if (vForm.flightSelected.checked){
			flightSelected = true;
			servCount = servCount +1;
		} else {
			servCount = 0;
		}
	}
	var hotelSelected = false;
	if (vForm.hotelSelected){
		dp = true;
		if (vForm.hotelSelected.checked){
			hotelSelected = true;
		}
	}
	
	var railSelected = false;
	if (vForm.railSelected) {
		railSelected = vForm.railSelected.checked || vForm.railSelected.value == "on";
	}
	
	return true;
}







