// JavaScript Document
//**********************************************************************************************************************//
//________________________________________________________//
// c'est un compteur Ajax                                 //
//________________________________________________________//
compteurAjax =0;

//________________________________________________________//
// cette une class va :                                   //
// - crée un objet ObjetAjax                              //
//________________________________________________________//

function ObjetAjax(){
//**********************************************************************************************************************//	
	
	//________________________________________________________//
	//  cette function va:                                    //
	//  - crée un nouveau objet XMLHttpRequest                //
	//________________________________________________________//
	this.nouveau_xhr= function(){
		var xhr = null;
		if(window.XMLHttpRequest){ 
		// Firefox et autres
			return new XMLHttpRequest();
		}
		else if(window.ActiveXObject){ 
		// Internet Explorer
			try {
				return new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				return new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
		else { 
		// XMLHttpRequest non supporté par le navigateur
			alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
			return false;
		}
	}
	
//**********************************************************************************************************************//	

	//________________________________________________________//
	//  cette function va:                                    //
	//  - Exécuter l’ajax et associer le résultat à un div    //
	//  parametres :                                          //
	//  * mon_div   :le nom de div HTML                       //
	//  * ma_page   :La page qui contienne la réponse         //
	//  * type      :GET ou POST                              //
	//  * mes_param :les parametres de la page                //
	//________________________________________________________//
	this.execAjaxDiv= function(mon_div,ma_page,type,mes_param){
		var xhr = this.nouveau_xhr();
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			document.getElementById(mon_div).style.display="none";
            document.getElementById('div_img').style.display="block";
			if(xhr.readyState == 4 && xhr.status == 200){
				mon_text=xhr.responseText;
				document.getElementById(mon_div).innerHTML=mon_text+" modèle(s)";
                document.getElementById(mon_div).style.display="block";
            	document.getElementById('div_img').style.display="none";
				if (mon_text==0)
				   document.getElementById('comparez').style.visibility='hidden';
				else
				   document.getElementById('comparez').style.visibility='visible';
			}
		}
		rnd=compteurAjax++;
		if(type=='POST'){
			xhr.open("POST",ma_page+"?rnd="+rnd,true);
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=iso-8859-1');
			xhr.send(mes_param);
		}
		else{
			xhr.open("GET",ma_page+"?rnd="+rnd + "&" + mes_param,true);
			xhr.send(null);
		}
		
	}
    /**********************************************************************************************************************************************************
	***************************************************/
	this.execAjaxDivrec= function(mon_div,ma_page,type,mes_param){
		var xhr = this.nouveau_xhr();
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			document.getElementById(mon_div).style.display="none";
            document.getElementById('div_img').style.display="block";
			if(xhr.readyState == 4 && xhr.status == 200){
				mon_text=xhr.responseText;
				document.getElementById(mon_div).innerHTML=mon_text;
                document.getElementById(mon_div).style.display="block";
            	document.getElementById('div_img').style.display="none";
				if (mon_text==0){
				   document.getElementById('comparez').style.visibility='hidden';
				   document.getElementById('au_hasard_div').style.visibility='hidden';
				}else{
				   document.getElementById('comparez').style.visibility='visible';
				   document.getElementById('au_hasard_div').style.visibility='visible';
				}
			}
		}
		rnd=compteurAjax++;
		if(type=='POST'){
			xhr.open("POST",ma_page+"?rnd="+rnd,true);
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=iso-8859-1');
			xhr.send(mes_param);
		}
		else{
			xhr.open("GET",ma_page+"?rnd="+rnd + "&" + mes_param,true);
			xhr.send(null);
		}
		
	}
	
	
	
//**********************************************************************************************************************//	

	//______________________________________________________________//
	//  cette function va:                                          //
	//  - Exécuter l’ajax et associer le résultat à une function    //
	//  parametres :                                                //
	//  * ma_function :ma function java script                      //
	//  * ma_page     :La page qui contienne la réponse             //
	//  * type        :GET ou POST                                  //
	//  * mes_param   :les parametres de la page                    //
	//  NB :                                                        //
	//  function ma_function(un_param='text'){...}                  //
	//______________________________________________________________//
	this.execAjaxFunction= function(ma_function,ma_page,type,mes_param){
		var xhr = this.nouveau_xhr();
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(xhr.readyState == 4 && xhr.status == 200){
				mon_text=xhr.responseText;
				//eval(ma_function+"("+mon_text +");");
				ma_function(mon_text);
			}
		}
		rnd=compteurAjax++;
		if(type=='POST'){
			xhr.open("POST",ma_page+"?rnd="+rnd,true);
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=iso-8859-1');
			xhr.send(mes_param);
		}
		else{
			xhr.open("GET",ma_page+"?rnd="+rnd + "&" + mes_param,true);
			xhr.send(null);
		}
	}
//**********************************************************************************************************************//
	
	//______________________________________________________________//
	//  cette function va:                                          //
	//  - Exécuter l’ajax et associer le résultat à une function    //
	//  parametres :                                                //
	//  * ma_function :ma function java script                      //
	//  * la_balise   :c'est X comme le NB                          //
	//  * ma_page     :La page qui contienne la réponse             //
	//  * type        :GET ou POST                                  //
	//  * mes_param   :les parametres de la page                    //
	//                                                              //
	//  NB :                                                        //
	//  function ma_function(un_tableau=Array[Array]){...}          //
	//  le XML doit être comme ça:                                  //
	//  <liste_X>                                                   //
	//  	<X>                                                     //
	//  		<param1_x>value</param1_x>                          //
	//  		<param1_x>value</param1_x>                          //
	//  	</X>                                                    //
	//  	<X>                                                     //
	//  		<param1_x>value</param1_x>                          //
	//  		<param1_x>value</param1_x>                          //
	//  	</X>                                                    //
	//  </liste_X>                                                  //
	//______________________________________________________________//
	this.execAjaxFunctionXML= function(ma_function,la_balise,ma_page,type,mes_param){
		var xhr = this.nouveau_xhr();
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(xhr.readyState == 4 && xhr.status == 200){
				//mon_text=responseXML.documentElement;
				reponse = xhr.responseXML.documentElement;
				var tbl=new Array();
				for(i=0;i<reponse.getElementsByTagName(la_balise).length;i++){
					var tbl_items=new Array();
					for(j=0;j<reponse.getElementsByTagName(la_balise)[i].childNodes.length;j++){
						tbl_items.push(reponse.getElementsByTagName(la_balise)[i].childNodes[j].firstChild.nodeValue);
					}
					tbl.push(tbl_items);
				}
				ma_function(tbl);
			}
		}
		rnd=compteurAjax++;
		if(type=='POST'){
			xhr.open("POST",ma_page+"?rnd="+rnd,true);
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			xhr.send(mes_param);
		}
		else{
			xhr.open("GET",ma_page+"?rnd="+rnd + "&" + mes_param,true);
			xhr.send(null);
		}
	}
//**********************************************************************************************************************//
}
function CalculerTotal(rubrique){
	var chaine_id="";
	var ax=new ObjetAjax();
	for(i=0;i<document.recherche.elements.length;i++)
	{
		if(document.recherche.elements[i].type=="checkbox" || document.recherche.elements[i].type=="radio")
		{
			if(document.recherche.elements[i].checked!=""){
			    chaine_id+=document.recherche.elements[i].value+",";
			}
		}else{
			if(document.recherche.elements[i].value!="Indifférent" && document.recherche.elements[i].value!="      "){
			    chaine_id+=document.recherche.elements[i].value+",";
			}
		}
	}
	chaine_id=chaine_id.substr(0,chaine_id.length-1);
        tab_chaine_id=chaine_id.split(',');
        chaine_id="";
        for(i=0;i<tab_chaine_id.length;i++){
            if(tab_chaine_id[i]!='')
                 chaine_id+=tab_chaine_id[i]+",";
        }
        chaine_id=chaine_id.substr(0,chaine_id.length-1);
	ax.execAjaxDiv("total_produit","http://www.whirlpool.ma/produits/GetTotalProduitByCritere",'GET',"critere="+chaine_id+"&rubrique="+rubrique);   
 }
function PrintPrice(produit,couleur){
	var ax=new ObjetAjax();
	ax.execAjaxDivrec("prix_unitaire","http://www.whirlpool.ma/produits/GetProduitImagePrixByProduitCouleur",'GET',"produit="+produit+"&couleur="+couleur);   
 }