var xhr = null;

function getXhr(){
  var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
	   xhr = new XMLHttpRequest();
	else if(window.ActiveXObject){ // Internet Explorer 
	   try {
                xhr = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
	}
	else { // XMLHttpRequest non supporté par le navigateur 
	   alert("Your Web navigator doesn't support XMLHTTPRequest object!"); 
	   xhr = false; 
	} 
  return xhr;
}

var bName = navigator.appName;
var bVer = parseInt(navigator.appVersion);
var NS4 = (bName == "Netscape" && bVer >= 4);
var IE4 = (bName == "Microsoft Internet Explorer" && bVer >= 4);

// Afficher le div
function showDiv(layerName,imgName,x,y){
   img = document.getElementById(imgName);
   TipBoxTop = getImagePageTop(img); // TIP BOX TOP POSITION
   TipBoxLeft =  getImagePageLeft(img); // TIP BOX LEFT POSITION

   var element = document.getElementById(layerName);
   if (element.style.visibility == "visible")
     element.style.visibility = "hidden";
   else
     element.style.visibility = "visible";
   
   element.style.top= TipBoxTop+y;
   element.style.left= TipBoxLeft+x;
}

// Cacher le div
function hideDiv(layerName){
   var element = document.getElementById(layerName);
   element.style.visibility = "hidden";
}


// Retourne la valeur X de l'image
function getImagePageLeft(img) {
   var x, obj;
   
   if (NS4) {	    
      if (img.container != null){
        return img.container.pageX + img.x;
      }
      else{
        return img.x;
      }
   }
   
   if (IE4) {
      x = 0;  
      obj = img;
      
      while (obj.offsetParent != null) {   
         x += obj.offsetLeft;   
         obj = obj.offsetParent;   
      }  
      x += obj.offsetLeft; 
      return x;
   }

   return -1;
}

// Retourne la valeur Y de l'image
function getImagePageTop(img) {
   var y, obj;
   if (NS4) {
      if (img.container != null){   
         return img.container.pageY + img.y;   
      }   
      else{   
         return img.y;  
      }
   }
   
   if (IE4) {
      y = 0;   
      obj = img;
      
      while (obj.offsetParent != null) {  
         y += obj.offsetTop;  
         obj = obj.offsetParent;  
      }
      
      y += obj.offsetTop; 
      return y;
   }
   
   return -1;
}

////////////////////////////////////////////////////////////////////////////////

// Changer le calendrier
function ajax_change_mois(mois, annee, idDiv){
	xhr = getXhr();
	xhr.onreadystatechange = function(){

		if(xhr.readyState == 4 && xhr.status == 200){
			reponse = xhr.responseText;
			document.getElementById(idDiv).innerHTML = reponse;
		}
	}
	xhr.open("POST","ajax/ajax.calendrier.php",true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

	xhr.send("cal_mois="+mois+"&cal_annee="+annee);
}

// Changer le select des livraisons
function change_livraison(pays, event_id, b_billet_broker, province, livraison, postal){
   xhr = getXhr();
	xhr.onreadystatechange = function(){

		if(xhr.readyState == 4 && xhr.status == 200){
         reponse = xhr.responseText;
			document.getElementById('livraison_div').innerHTML = reponse;
			
			var new_liv = "_0";
			if (livraison) {
				var new_liv = livraison.substr(livraison.indexOf('_'));
			}
			
			//update_livraison("_0");
			update_livraison(new_liv);
			
			change_province('prov_id', 'province', pays, province, 'form_achat-province_state', 9, 1);
		}
	}
	xhr.open("POST","ajax/ajax.livraison.php",true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

	xhr.send("pays="+pays+"&event="+event_id+"&bbb="+b_billet_broker+"&livraison="+livraison+"&postal="+postal);
}

// Changer le select des provinces/états
function change_province(id, nom, pays, province, label, tabindex, required){
   xhr = getXhr();
	xhr.onreadystatechange = function(){

		if(xhr.readyState == 4 && xhr.status == 200){
			reponse = xhr.responseText;
			document.getElementById(id).innerHTML = reponse;
		}
	}
	xhr.open("POST","ajax/ajax.province.php",true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

	xhr.send("nom="+nom+"&pays="+pays+"&province="+province+"&label="+label+"&tabindex="+tabindex+"&required="+required);
}