function getHTTPObject()
{
  var xmlhttp = false;

  /* Compilation conditionnelle d'IE */
  /*@cc_on
  @if (@_jscript_version >= 5)
     try
     {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch (e)
     {
        try
        {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E)
        {
           xmlhttp = false;
        }
     }
  @else
     xmlhttp = false;
  @end @*/

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
     try
     {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e)
     {
        xmlhttp = false;
     }
  }

  return xmlhttp;
}
function getCommandDetails(iCommandeIdx, sDetailText)
{
	var oTd = document.getElementById(iCommandeIdx);
	if(document.getElementById(iCommandeIdx).state == "")
	{
		oTd.state = "collapse";
		var sInnerHTML = "";
		sInnerHTML += "<a href=\"javascript:void(getCommandDetails('" + iCommandeIdx + "', '" + sDetailText + "'))\">" + sDetailText + "</a>";
		oTd.innerHTML = sInnerHTML;
	}
	else
	{
		oTd.state = "";
		var oXhr = getHTTPObject(); 
		oXhr.open("GET", "./include/getCommandDetails.php?Commande=" + iCommandeIdx, true); 
		oXhr.onreadystatechange = function() 
								  { 
									if(oXhr.readyState == 4 )
									{
										//alert("XML fourni");
										var oResultat = oXhr.responseXML;
										//debugObject(oResultat);
										formatXMLForDetail(iCommandeIdx, oResultat);
									}
								}
		oXhr.send(null); 
	}
}

function formatXMLForDetail(sTdId, oResultat)
{
	var oTd = document.getElementById(sTdId);
	var sInnerHTML = "";
	sInnerHTML += '<table class="detail">\n';
	sInnerHTML += '<thead>\n';
	sInnerHTML += '<tr>\n';
	sInnerHTML += '    <th>' + g_asLang["Reference"] + '</th>\n';
	sInnerHTML += '	   <th>' + g_asLang["ProductName"] + '</th>\n';
	sInnerHTML += '	   <th>' + g_asLang["Quantity"] + '</th>\n';
	sInnerHTML += '	   <th nowrap="nowrap">' + g_asLang["Price"] + '</td>\n';
	sInnerHTML += '</tr>\n';
	sInnerHTML += '</thead>\n';
	sInnerHTML += '<tbody>\n';
	//Récupération des informations de produit de la commande
	var oProducts = oResultat.getElementsByTagName("produitsItem");
	for (i=0; i < oProducts.length; i++)
	{
		var oProductNameNode = oProducts.item(i).getElementsByTagName("nom");
		var sProductName = oProductNameNode.item(0).firstChild.data;
		var oProductPriceNode = oProducts.item(i).getElementsByTagName("prix");
		var sProductPrice = oProductPriceNode.item(0).firstChild.data;
		var oProductRef = oProducts.item(i).getElementsByTagName("ref");
		var sProductRef = oProductRef.item(0).firstChild.data;
		var oProductQuantity = oProducts.item(i).getElementsByTagName("quantite");
		var sProductQuantity = oProductQuantity.item(0).firstChild.data;

		sInnerHTML += '<tr>\n';
		sInnerHTML += '    <td>' + sProductRef + '</td>\n';
		sInnerHTML += '	   <td>' + sProductName + '</td>\n';
		sInnerHTML += '	   <td>' + sProductQuantity + '</td>\n';
		sInnerHTML += '	   <td style="text-align: right;" nowrap="nowrap">' + sProductPrice + '</td>\n';
		sInnerHTML += '</tr>\n';
	}
	//Récupération des informations sur les autres infos de commande
	var oMontant = oResultat.getElementsByTagName("Montant");
	if(oMontant.length > 0)
	{
		sMontant = oMontant.item(0).firstChild.data;
	}
	var oFraisEnvoi = oResultat.getElementsByTagName("FraisEnvoi");
	if(oFraisEnvoi.length > 0)
	{
		sFraisEnvoi = oFraisEnvoi.item(0).firstChild.data;
	}
	var oTotal = oResultat.getElementsByTagName("Total");
	if(oTotal.length > 0)
	{
		sTotal = oTotal.item(0).firstChild.data;
	}
	var oAssurance = oResultat.getElementsByTagName("Assurance");
	if(oAssurance.length > 0)
	{
		sAssurance = oAssurance.item(0).firstChild.data;
	}
	sInnerHTML += '<tr><th colspan="3">' + g_asLang["AdditionnalCost"] + '</th><th>' + g_asLang["Price"] + '</th></tr>';
	sInnerHTML += "<tr><td colspan=\"3\">" + g_asLang["ShippingCost"] + "</td><td>" + sFraisEnvoi + "</td></tr>";
	sInnerHTML += '<tr><td colspan="3">' + g_asLang["Cost"] + '</td><td>' + sMontant + '</td></tr>';
	sInnerHTML += '<tr><td colspan="3">' + g_asLang["Insurance"] + '</td><td>' + sAssurance + '</td></tr>';
	sInnerHTML += '<tr><td colspan="3">' + g_asLang["Total"] + '</td><td>' + sTotal + '</td></tr>';		
	sInnerHTML += '</tbody>\n';	
	sInnerHTML += '</table>\n';
	//alert(sInnerHTML);
	oTd = document.getElementById(sTdId);
	if(typeof(oTd) != "undefined")
	{
		var sCurrentInnerHTML = oTd.innerHTML;
		var sNewInnerHTML = sCurrentInnerHTML + "\n" + sInnerHTML;
		oTd.innerHTML = sNewInnerHTML;
	}
}

function debugObject(oObject)
{
	var sAlerte = "";
	var sXML = "";
	for(sXML in oObject)
	{
		sAlerte += sXML + "\n";
	}
	alert(sAlerte);
}

