  
  //decalage jours entre aller et retour
	var dpDelay = 3;
	var volDelay=7;
	var rechercherVolHotel = false;
	var volHotel_ValidationDate = false;
	
	$(document).ready(function() {
	 
        // initialisation des date du moteur,    
  	    var today = new Date ();
  	   
       
        //vol+hotel
		departDate = new Date();
		departDate.setDate(today.getDate() + 3);
		returnDate = new Date();
		returnDate.setDate(today.getDate() + dpDelay +7);
		
		departMonth=(departDate.getMonth()+1).toString();
        departDay=departDate.getDate().toString();
        
        returnMonth=(returnDate.getMonth()+1).toString();
        returnDay=returnDate.getDate().toString();
		
		if(departMonth.length==1)
          departMonth = "0"+departMonth;
        
        if(departDay.length==1)
            departDay= "0"+departDay;
		
		if(returnMonth.length==1)
        returnMonth = "0"+returnMonth;
        
        if(returnDay.length==1)
            returnDay= "0"+returnDay;
		
        dateDepartText = departDay+"/"+departMonth+"/"+departDate.getFullYear();
		dateRetournText = returnDay+"/"+returnMonth+"/"+returnDate.getFullYear();
        
        $('#DATE_DVHText').val(dateDepartText);
  	    $('#DATE_RVHText').val(dateRetournText);
  	  	
        //var inOneWeek = new Date();
        $("#formVolHotel input[@name=D_DATE]").val(departDate.getFullYear()+""+departMonth+""+departDay);
        $("#formVolHotel input[@name=R_DATE]").val(returnDate.getFullYear()+""+returnMonth+""+returnDay);
       

		
		displayNbRoomsFields('dv_repartRoom', 'nbRoomsFields',2,0);
		

		// listner sur les listes deroulates : adult et enfants,  mois, jour...
		
		$("#formVolHotel select[@name=NB_CHILDREN]").change(function() {
			displayChildrenAgeFields($("#formVolHotel select[@name=NB_CHILDREN]").val(),'childrenAgeFields')
			displayNbRoomsFields('dv_repartRoom','nbRoomsFields',$("#formVolHotel select[@name=NB_ADULTS]").val(), $("#formVolHotel select[@name=NB_CHILDREN]").val());
			
		});
			
		
		$("#formVolHotel select[@name=NB_ADULTS]").change(function(){			
			displayNbRoomsFields('dv_repartRoom','nbRoomsFields',$("#formVolHotel select[@name=NB_ADULTS]").val(), $("#formVolHotel select[@name=NB_CHILDREN]").val());
			
		});
		
		$("#depMonth").change(function(){
			refillDepDaySejour('depMonth','addepDay','--','','DD','MMM YYYY');
		});		
		
				
		//vols +hotel
		//via input
		initDoubleCalendier("DATE_DVHText", "cal7Container", "calendar7","DATE_DVHText",12,"","updateReturnDate('DATE_DVHText','DATE_RVHText','formVolHotel')","DD","YYYYMM");
		initDoubleCalendier("DATE_RVHText", "cal8Container", "calendar8","DATE_RVHText",18, "","updateDepartureDate('DATE_RVHText','formVolHotel')","DD","YYYYMM");	
		//via picto calendar pas besoin
		
	
		//	On gère l'envoi du formulaire vol+hotel 
		$('#formVolHotel').submit(function() {
			return submitformVolHotel();
			return false;
		});
		
		
  
	});
  
  
 
	//onsubmit DP
	
	function submitformVolHotel() {
		
		var departureDateTab = $("#DATE_DVHText").val().split("/");
		var returnDateTab = $("#DATE_RVHText").val().split("/");
		var error_=false;
		var html="<img id='errorIcon' src='/fileadmin/multiproductsearch/img/pictoAttention.jpg' alt='error' />Attention!<div class='errMsg11v'>Merci de lire le(s) message(s) suivant(s)</div> ";
	
				
		if ($("#formVolHotel input[@name=E_LOCATION_IN]").val() == '') {
				
			html=html+"<span class='errorMessage'>-Veuillez remplir la ville d\'arrivée.</span><br/>";
			error_=true;
				
		}
		
		
		if ($("#formVolHotel select[@name=B_LOCATION_IN]").val() == $("#formVolHotel input[@name=E_LOCATION_IN]").val() ) {
			
			html=html+"<span class='errorMessage'>-Les villes de départ et de retour doivent être différentes.</span><br/>";
			error_=true;
		}
			
		
		if ( parseInt($("#formVolHotel select[@name=NB_ADULTS]").val()) + parseInt($("#formVolHotel select[@name=NB_CHILDREN]").val()) > 9 ) {
			html=html+"<span class='errorMessage'>La réservation de billets d'avion est limitée à 9 passagers au total.</span><br/>";
			error_=true;
		}
		
	
		// erreur sur les dates		
		if ($("#formVolHotel input[@name=E_LOCATION_IN]").val() != '') 
		{
			var validateFormatDate=true;			
			
			if(!validRegexDate($('#DATE_DVHText').val())  || !isDateValid($('#DATE_DVHText').val())) {
			      
				html=html+"<span class='errorMessage'>-Veuillez entrer une date de départ valide(format jj/mm/aaaa).</span><br/>";
				validateFormatDate=false;
				error_=true;
				
			}
						
			if(!validRegexDate($('#DATE_RVHText').val()) || !isDateValid($('#DATE_RVHText').val())) {
			      
				html=html+"<span class='errorMessage'>-Veuillez entrer une date de retour valide(format jj/mm/aaaa).</span><br/>";
				validateFormatDate=false;
				error_=true;
			}
			
			if(validateFormatDate){
				htmlNew = validateDates(html,"formVolHotel", departureDateTab, returnDateTab, "D_ANYTIME", "R_ANYTIME");
				if (htmlNew != html ){
					html = htmlNew;
					error_=true;
				}
			}
		}
		
		if (error_){	
			
			$("#formVolHotel div[@id=errorDP]").html(html);
			$("#formVolHotel div[@id=errorDP]").show();
			return false;
				
			}else{
		
			// on rempli les champs cachés  http://weekend.opodo.fr/apps/jsp/dphotel/DPAvailabilityServlet
			$("#formVolHotel").attr('action', 'http://weekend.opodo.fr/apps/jsp/dphotel/DPAvailabilityServlet');
    		if(departureDateTab[1].toString().length==1)
				departureDateTab[1]="0"+departureDateTab[0];
      
			if(departureDateTab[1].toString().length==1)
				departureDateTab[1]="0"+departureDateTab[1];
      
			if(returnDateTab[0].toString().length==1)
				returnDateTab[0]="0"+returnDateTab[0];
           
			if(returnDateTab[1].toString().length==1)
				returnDateTab[1]="0"+returnDateTab[1];
				
				$("#formVolHotel input[@name=D_DATE]").val(departureDateTab[2]+''+ departureDateTab[1]+''+departureDateTab[0]);
				$("#formVolHotel input[@name=R_DATE]").val(returnDateTab[2]+''+ returnDateTab[1]+''+returnDateTab[0]); 
							
			return true;
		}
		
	}

