// Shoehustler.com	
/*
     * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
     * @param :
     * - obj : le nom du pseudo-composant
     * - nb : nombre d'elements que contient le composant
     */        
    /**
     * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
     * @param :
     * - obj : le nom du pseudo-composant
     * - el_id : id de l'element (position dans le composant)
     * - ev : le type d'evenement
     * - css_defaut : le style de la ligne par defaut
     * - nb : le nombre d'elements
     */ 
	function ieTrick(sep) 
	{ 
	  d = new Date(); 
	  trick = d.getYear() + "ie" + d.getMonth() + "t" + d.getDate() + "r" + d.getHours() + "i" + d.getMinutes() + "c" + d.getSeconds() + "k" + d.getMilliseconds(); 
	  if (sep != "?") 
	  { 
		sep = "&"; 
	  } 
	  return sep + "ietrick=" + trick; 
	}
	var xhr = null; 
	function getXhr()
	{
		 if(window.XMLHttpRequest)xhr = new XMLHttpRequest(); 
	else if(window.ActiveXObject)
	  { 
	  try{
		 xhr = new ActiveXObject("Msxml2.XMLHTTP");
		 } catch (e) 
		 {
		 xhr = new ActiveXObject("Microsoft.XMLHTTP");
		 }
	  }
	else 
	  {
	  alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
	  xhr = false; 
	  } 
	}
	
	function ContentSide(id,filter,flag)
	{	
	getXhr();
	xhr.onreadystatechange = function()
		{
			 document.getElementById("childContentSide").innerHTML="<center><table width=\"100%\" height=\"100%\" cellspacing=\"0\" cellpadding=\"0\" ><tr><td align=\"center\" valign=\"middle\"><img src=\"http://www.shoehustler.com/images/ajax-loader.gif\"></td></tr></table></center>";
		 if(xhr.readyState == 4 && xhr.status == 200)
		 {
		 document.getElementById("childContentSide").innerHTML=xhr.responseText;
		 }
		}
	xhr.open("GET","<?=$site_url?>/ajax/ajax_filter.php?id="+id+"&filter="+filter+"&flag="+flag+ieTrick(),true);
	xhr.send(null);
	}
    function setEvenement(obj, el_id, ev, css_defaut, nb, provenance) {
        //--- recuperation des balises
        comp = document.getElementById(obj);
        tr = document.getElementById("tr_" + obj + el_id);
        ck = document.getElementById(obj + el_id);
        //--- si il s'agit d'un clique
        if(ev == "click") {
            //--- alors on coche ou decoche la checkbox
            if(provenance = "td") ck.checked = !ck.checked;
            //--- si on decoche, alors on decoche aussi la checkbox du composant            
            if(!ck.checked) {
                if(comp.checked) comp.checked = false;
            } else {
                //---sinon on vérifie que tous les elements sont cochés
                var absent = false;
                var i = 0;
                while(i < nb && absent == false)    {                        
                    if(i != el_id) { if(!document.getElementById(obj + i).checked) absent = true; }                    
                    i++;                                
                } 
                if(comp.checked == absent) comp.checked = !absent;
            }
        }     
        //--- autres evenements
        switch(ev) {
            case "over": tr.className = "select_over"; break;
            case "out": if(ck.checked) tr.className = "select_checked"; else tr.className = css_defaut; break;        
        }
    }	