function createRequestObject() {	
    var ro;
    var browser = navigator.appName;
    
    if (browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        ro = new XMLHttpRequest();
    }
   
	return ro;
}

var http = createRequestObject();

// Ajax pour ajouter des chambres
function ajout_chambre(id_div, nb_chambre, nb_max_adulte, nb_max_enfant, langue) {			
	var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	
	// Loading
	document.getElementById(id_div).innerHTML = '<div align="center"><img src="images/loading_ajax_chambre.gif"  alt="" border="0" /></div>';
		
	// Ouverture de la requete GET
	 http.open('get', 'ajax.php?action=ajout_chambre&nb_chambre=' + nb_chambre + '&langue='+ langue + '&nb_adulte_max=' + nb_max_adulte + '&nb_enfant_max=' + nb_max_enfant + '&' + milli);
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			  
	        document.getElementById(id_div).innerHTML = html;
	    }
    }
	http.send(null);
}



function ajout_chambre_moteur_accueil(id_div, nb_chambre, nb_max_adulte, nb_max_enfant, langue) {			
	var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	
	// Loading
	document.getElementById(id_div).innerHTML = '<div align="center"><img src="/images/loading_ajax_chambre.gif"  alt="" border="0" /></div>';
		
	// Ouverture de la requete GET
	 http.open('get', 'ajax.php?action=ajout_chambre_moteur_accueil&nb_chambre=' + nb_chambre + '&langue='+ langue + '&nb_adulte_max=' + nb_max_adulte + '&nb_enfant_max=' + nb_max_enfant + '&' + milli);
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			  
	        document.getElementById(id_div).innerHTML = html;
	    }
    }
	http.send(null);
}

function ajout_carnet_voyage(id_div2,key_prest,theme,langue) {			
	var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	
	// Loading
	document.getElementById(id_div2).innerHTML = '<div align="center"><img src="/images/loading_ajax_chambre.gif"  alt="" border="0" /></div>';
		
	// Ouverture de la requete GET
	 http.open('get', 'ajax.php?action=ajout_carnet_voyage&langue=' + langue + '&theme=' + theme + '&prest_to_add=' + key_prest);
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			  
	        //document.getElementById(carnet).innerHTML = html;
	        document.getElementById(id_div2).innerHTML = html;
	        
	        
			document.getElementById('lien_ajout_carnet').innerHTML = '';
	       
	    }
    }
	http.send(null);
}

function ajout_carnet_voyage_liste(id_div2,key_prest) {			
	var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	
	// Loading
	document.getElementById(id_div2).innerHTML = '<div align="center"><img src="images/loading_ajax_chambre.gif"  alt="" border="0" /></div>';
		
	// Ouverture de la requete GET
	 http.open('get', 'ajax.php?action=ajout_carnet_voyage&prest_to_add=' + key_prest);
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			  
	        //document.getElementById(carnet).innerHTML = html;
	        document.getElementById(id_div2).innerHTML = html;
	        
	        document.getElementById('lien_ajout_carnet_' + key_prest).style.visibility = 'hidden';
	        document.getElementById('lien_suppression_carnet_' + key_prest).style.visibility = 'visible';

	        document.getElementById('lien_suppression_carnet_' + key_prest).style.position = 'static';
            document.getElementById('lien_ajout_carnet_' + key_prest).style.position = 'absolute';
	        
	      // alert('lien_ajout_carnet_' + key_prest);
	    }
    }
	http.send(null);
}

function suppression_carnet_voyage_liste(id_div2,key_prest) {			
	var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	
	// Loading
	document.getElementById(id_div2).innerHTML = '<div align="center"><img src="/images/loading_ajax_chambre.gif"  alt="" border="0" /></div>';
		
	// Ouverture de la requete GET
	 http.open('get', 'ajax.php?action=suppression_carnet_voyage&prest_to_del=' + key_prest);
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			  
	        //document.getElementById(carnet).innerHTML = html;
	        document.getElementById(id_div2).innerHTML = html;
	        
	        document.getElementById('lien_ajout_carnet_' + key_prest).style.visibility = 'visible';
	        document.getElementById('lien_suppression_carnet_' + key_prest).style.visibility = 'hidden';
	        
	        document.getElementById('lien_suppression_carnet_' + key_prest).style.position = 'absolute';
            document.getElementById('lien_ajout_carnet_' + key_prest).style.position = 'static';
	        
	      // alert('lien_ajout_carnet_' + key_prest);
	    }
    }
	http.send(null);
}

function reload_moteur_ajax(id_div2,type_reload,type_hebergement,theme,langue,time,court_sejour,menu_resa,moteur_centre,id_div_cache1,id_div_cache2,id_div_cache3,contexte_recherche) {
    reload_moteur_ajax(id_div2,type_reload,type_hebergement,theme,langue,time,court_sejour,menu_resa,moteur_centre,id_div_cache1,id_div_cache2,id_div_cache3,contexte_recherche,'');
}

function reload_moteur_ajax(id_div2,type_reload,type_hebergement,theme,langue,time,court_sejour,menu_resa,moteur_centre,id_div_cache1,id_div_cache2,id_div_cache3,contexte_recherche,date_defaut) {
    var maintenant = new Date();
	var milli = maintenant.getMilliseconds();
	//alert('moteur_centre : ' +moteur_centre);
	var zonegeo = '';
    if(document.getElementById('zonegeo') != null){
        zonegeo = document.getElementById('zonegeo').value;
    }
    var datedeb = ''; 
    if(document.getElementById('datedeb') != null){
        datedeb = document.getElementById('datedeb').value;
    }
    if(datedeb == ''){
        if(document.getElementById('datedebminiresa') != null){
          datedeb = document.getElementById('datedebminiresa').value;
        }
    }
    if(datedeb == ''){
        if(document.getElementById('datedebMoteurHautDroite') != null){
          datedeb = document.getElementById('datedebMoteurHautDroite').value;
        }
    }
    var duree = '';
    if(document.getElementById('duree') != null){
        duree = document.getElementById('duree').value;
    }
    
    //MB - 27/12/2011 - il y a des variables qu'on ne récupérait pas
    var strNbAdultes = '';
    if(document.getElementById('divAdulte') != null){
	    var strNbAdultes = '&personnes[ADULTES]=' + document.getElementById('divAdulte').value;
	}
	var strNbEnfants = '';
	if(document.getElementById('divEnfant') != null){
	    var strNbEnfants = '&personnes[ENFANTS]=' + document.getElementById('divEnfant').value;
	}
	if(duree == '' && document.getElementById('divDureeSejour') != null){
	    var duree = document.getElementById('divDureeSejour').value;
	}
	if(datedeb == '' && document.getElementById('datedebMoteurHautDroite_ID') != null){
		var datedeb = document.getElementById('datedebMoteurHautDroite_ID').value;
	}
	if (datedeb == '' && document.getElementById('datedeb_ID') != null){
		var datedeb = document.getElementById('datedeb_ID').value;  
	} 
    //fin MB - 27/12/2011
    
    //alert('datedeb : ' +datedeb);
	// Loading
	document.getElementById(id_div2).innerHTML = '<div align="center"><img src="images/loading_ajax_moteur.gif"  alt="" border="0" /></div>';
	//alert('ajax.php?action=reload_moteur&langue=' + langue + '&theme=' + theme + '&type_hebergement=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa);
	// Ouverture de la requete GET
	if(type_reload == 'PRESTATAIRE' && (type_hebergement == '' || type_hebergement == 'RESIBONHOM' || type_hebergement == 'meuble' || type_hebergement == 'hotel'  || type_hebergement == '74AAHOT100343'   || type_hebergement == '74AAHOT100337' || type_hebergement == '74AAHOT100333')){
		type_reload = 'RESA';
	}
	if(type_reload == 'RESA'){
		if(type_hebergement == 'RESIBONHOM'){
			http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=G&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche);
		}else{
			if(type_hebergement == '74AAHOT100343'){
				http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=H&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche);
			}else{
				if(type_hebergement == '74AAHOT100337'){
					http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=H&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche);
				}else{
					if(type_hebergement == '74AAHOT100333'){
						http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=H&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche);
					}else{
						//alert('ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche);
						http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&type_hebergement=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche + '&zonegeo=' + zonegeo + strNbAdultes + strNbEnfants);
					}
				}
			}
		}
	}else{
		if(type_reload == 'PRESTATAIRE'){
			//alert('ajax.php?action=reload_moteur&langue=' + langue + '&theme=' + theme + '&code_page=' + type_hebergement + '&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre);
			http.open('get', 'ajax.php?action=reload_moteur&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&code_page=' + type_hebergement + '&prestataire_reservation=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche + strNbAdultes + strNbEnfants);
		}else{
			http.open('get', 'ajax.php?action=reload_moteur_page&datedeb=' + datedeb + '&duree=' + duree + '&langue=' + langue + '&theme=' + theme + '&code_page=' + type_hebergement + '&id_div2=' + id_div2 + '&court_sejour=' + court_sejour + '&time=' + time + '&menu_resa=' + menu_resa + '&affiche_moteur_centre=' + moteur_centre + '&contexte_recherche=' +contexte_recherche + strNbAdultes + strNbEnfants);
		}
	}
	
	 
	 // Recupération du retour de la fonction
	 http.onreadystatechange = function() {
         if(http.readyState == 4){
         	
	        var response = http.responseText;
	        var html = new String();
	        
	        // Récupération du code HTML (echo)
	        html = response;
			if(type_hebergement == 'FORM_HOTEL'){
				 //document.getElementById(carnet).innerHTML = html;
		        if(document.getElementById(id_div_cache1) != null){
		        	document.getElementById(id_div_cache1).innerHTML = '';
		        }
		        if(document.getElementById(id_div_cache2) != null){
		        	document.getElementById(id_div_cache2).innerHTML = '';
		        }
		        if(document.getElementById(id_div_cache3) != null){
		        	document.getElementById(id_div_cache3).innerHTML = '';
		        }
		        
		        document.getElementById(id_div2).innerHTML = html;
		        if(document.getElementById('reservation_hotel') != null){
		        	document.getElementById('reservation_hotel').style.display = 'block';
		        }
			}else{  
		        //document.getElementById(carnet).innerHTML = html;
		        if(document.getElementById(id_div_cache1) != null){
		        	document.getElementById(id_div_cache1).innerHTML = '';
		        }
		        if(document.getElementById(id_div_cache2) != null){
		        	document.getElementById(id_div_cache2).innerHTML = '';
		        }
		        if(document.getElementById(id_div_cache3) != null){
		        	document.getElementById(id_div_cache3).innerHTML = '';
		        }
		        document.getElementById(id_div2).innerHTML = html;
		        if(document.getElementById('reservation_hotel') != null){
		        	document.getElementById('reservation_hotel').style.display = 'none';
		        }	       
	    	}
	        init_nb_resultats_ajax('recherche',date_defaut);
	    }
    }
	http.send(null);
	//alert('test');
	//setTimeout(init_nb_resultats_ajax('recherche'), 2000);
	//sleep(4000);
	
	
}

function init_nb_resultats_ajax(mode) {
    init_nb_resultats_ajax(mode,'');
}

function init_nb_resultats_ajax(mode,date_defaut) {
 			
		var maintenant = new Date();
		var milli = maintenant.getMilliseconds();
		
		//---------------------------------------
		// Récupération des champs de recherche
		//---------------------------------------
		
		// Date de début
        /*if(document.getElementById('datedeb') != null){
			var valDate = document.getElementById('datedeb').value;
		}else{
		    if (date_defaut != null && date_defaut != ''){
                var valDate = date_defaut;
            } else {
                var valDate = 'JJ/MM/AAAA';
            }  
		}*/
		if(document.getElementById('datedebMoteurHautDroite_ID') != null){
			var valDate = document.getElementById('datedebMoteurHautDroite_ID').value;
		} else if (document.getElementById('datedeb_ID') != null){
		    var valDate = document.getElementById('datedeb_ID').value;  
		} else if(document.getElementById('datedeb') != null){
			var valDate = document.getElementById('datedeb').value;
		}else{
			var valDate = 'JJ/MM/AAAA';
		}
	    var strDatedeb = '&datedeb=' + valDate;
	    
	    // Durée
	    if(document.getElementById('divDureeSejour') != null){
	    	var strDuree = '&duree=' + document.getElementById('divDureeSejour').value;
	    }else{
	    	var strDuree = '&duree=1';
	    }
	    if(document.getElementById('divAdulte') != null){
	    	var strNbAdultes = '&personnes[ADULTES]=' + document.getElementById('divAdulte').value;
	    }else{
	    	var strNbAdultes = '&personnes[ADULTES]=1';
	    }
	    var ageEnfants = '';
	    if(document.getElementById('divEnfant') != null){
	    	var nbEnfants = document.getElementById('divEnfant').value;
            var strNbEnfants = '&personnes[ENFANTS]=' + nbEnfants;
            for(i = 1; i <= nbEnfants; i++) {
                if(document.getElementById('age_enfant_' + i) != null){
                  ageEnfants += '&age_enfant_' + i + '=' + document.getElementById('age_enfant_' + i).value;  
                }
            }
	    }else{
	    	var strNbEnfants = '&personnes[ENFANTS]=0';
	    }
	    if(document.getElementById('langue') != null){
	    	var strLangue = '&langue=' + document.getElementById('langue').value;
	    }else{
	    	var strLangue = '&langue=FR';
	    }
	    
		// Criteres
		var strCritere = '';
		var criteres = document.getElementsByName('criteres[]');
		//alert(criteres);
		for (var i = 0; i < criteres.length; i++) {
		  //alert(criteres[i].value + ' - ' + criteres[i].type + ' - ' + criteres[i].id + ' - ' + criteres[i].id.indexOf("moteur"));
		   switch(criteres[i].type) {
		       case 'checkbox' :
		           if(criteres[i].checked == true && criteres[i].id.indexOf("moteur") > 0) {
		             //alert(criteres[i].value + criteres[i].type);
		             strCritere = strCritere + '&criteres[]=' + criteres[i].value;  
	               }
		           break;
		        case 'SELECT' :
		           if(criteres[i].selected == true && criteres[i].id.indexOf("moteur") > 0) {
		             strCritere = strCritere + '&criteres[]=' + criteres[i].value;  
	               }
		           break;
		        default :
		           //if(criteres[i].id.indexOf("moteur") > 0) {
		           	strCritere = strCritere + '&criteres[]=' + criteres[i].value;
		           //}
		           break;
		   }
		   //alert(strCritere);
	    }
	    
	    // Zongeo
	    var strZoneGeo = '';
	    if(document.getElementById('zonegeo') != null) {
	     strZoneGeo += '&zonegeo=' + document.getElementById('zonegeo').value;  
	    }else{
	     strZoneGeo += '&zonegeo=';
	    }
	  
	    if(document.getElementById('filtre_prestataires') != null) {
	     var filtrePrestataires =  '&filtre_prestataires=' +document.getElementById('filtre_prestataires').value;  
	    }else{
	     var filtrePrestataires = '';	
	    }
	    
	    if(document.getElementById('filtre_prestations') != null) {
	     var filtrePrestations =  '&filtre_prestations=' +document.getElementById('filtre_prestations').value;  
	    }else{
	     var filtrePrestations = '';	
	    }
	    
        if(document.getElementById('type_hebergement') != null) {
	     var typeHebergement = document.getElementById('type_hebergement').value;  
	    }else{
	     var typeHebergement = '';	
	    }
	    //alert(typeHebergement);
	    // Construction de l'url final
	    var url = '';
	    url += 'ajax.php?action=nb-resultats-'+ typeHebergement + '&mode=' + mode + '&time=' + milli;
	    url += '&new_recherche=1&action_resa=recherche&mode_nb_resultats_ajax=OUI';
	    url += strDatedeb;
	    url += strDuree;
	    url += strNbAdultes;
	    url += strNbEnfants;
	    url += ageEnfants;
        url += strCritere;
	    url += strZoneGeo;
	    url += strLangue;
	    url += filtrePrestataires;
	    url += filtrePrestations;
	    if(valDate != 'JJ/MM/AAAA' && valDate != 'DD/MM/YYYY'){
		    //alert(url);
			// Loading
			document.getElementById('nb_resultats_ajax').innerHTML = '<img src="/imgs/loading_ajax_moteur.gif" alt="" border="0" />';
			
			// Ouverture de la requete GET
			http.open('get',url);
			 
			 // Recupération du retour de la fonction
			 http.onreadystatechange = function() {
		         if(http.readyState == 4){
		         	
			        var response = http.responseText;
			        var html = new String();
			        
			        // Récupération du code HTML (echo)
			        html = response;
			        document.getElementById('nb_resultats_ajax').innerHTML = html;
			    }
		    }
			http.send(null);
		}
	    	
}

