function getLoadingStrg () {
 return ('<div align=center><img src="'+curHost+'images/loader.gif" /></div>');
}

function callTrack (awbPre, awbNum) {
  var request = getXhr();
  if (!request) {
	alert("Unable to perform your request: Error creating object!");
  }else{
	  sleeping = true;
	  document.body.style.cursor='wait';
  	  objW = document.getElementById("animWait");
	  if (objW) objW.innerHTML = getLoadingStrg ();

	  var strParam = "";
	  strParam = strParam + "awbpre="+awbPre; 
	  strParam = strParam + "&awbnum="+awbNum;  							
	  d = new Date();
	  strParam = strParam + "&tmpcode="+d.getDay()+d.getHours()+d.getMinutes()+d.getSeconds();
//strParam = strParam + "&test=TT"
	  strParam = encodeURI(strParam);
	  
	  var url = curHost + "Customers/getTrack.php" ;
//  alert (url+' ||POST|| '+strParam);	  
	  request.onreadystatechange = function() { update_TT_Page(request); } 
      request.open('POST', url, true);
	  request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	  request.setRequestHeader("Content-length", strParam.length);
	  request.setRequestHeader("Connection", "close"); 
	  request.send(strParam); 
  }
}
//function addStatus(Msg) {
 // strStatus = strStatus + Msg + "<br>";
 // document.getElementById("TrackStatus").innerHTML = strStatus;	
//}
  var countLig = 0;
  var linktoFromJsp='./tracking_info_request_form.php';
  var fd_AWBnum = '<!--fdAWBnum-->';
  var fd_FROM   = '<!--fdFROM-->'; 
  var fd_TO     = '<!--fdTO-->';
  var fd_Pieces = '<!--fdPieces-->';
  var fd_Weight = '<!--fdWeight-->';
  var fd_Status = '<!--fdStatus-->';
  var fd_MorInf = '<!--more_info-->';
  var strResultHeader = '  <tr>\n'+
						'	<td colspan="3"> \n'+   
						'	  <table cellspacing="0" cellpadding="3" >\n'+
						'		<tr style="background-color:#ADD2D8">\n'+
						'		  <td width="90px" align="center">AWB number</td>\n'+
						'		  <td width="90px">&nbsp;<b>'+fd_AWBnum+'</b></td>\n'+
						'		  <td width="260px">FROM <b>'+fd_FROM+'</b></td>\n'+
						'		  <td width="260px">TO <b>'+fd_TO+'</b></td>\n'+
						'		</tr>\n'+
						'	  </table>\n'+
						'	</td>\n'+
						'  </tr>\n'+
						'  <tr>\n'+
						'	<th colspan="3" scope="col" height="2px">\n'+
						'	</th>\n'+
						'  </tr>\n'+
						'  <tr bgcolor="#E2E2E2">\n'+
						'	<th width="50px" class="legendtable_tracking" >Pieces</th>\n'+
						'	<th width="60px" class="legendtable_tracking" >Weight (Kg)</th>\n'+
						'	<th width="590px" class="legendtable_tracking" >Status</th>\n'+
						'  </tr>\n';						
  var strResultDataRow= '  <tr>\n'+
						'	<td class="result1_tracking" align="left">&nbsp;'+fd_Pieces+'</td>\n'+
						'	<td class="result1_tracking" align="left">&nbsp;'+fd_Weight+'</td>\n'+
						'	<td class="result1_tracking" align="left">'+fd_Status+'</td>\n'+
						'  </tr>\n'+
						'  <tr>\n'+
						'	<td>&nbsp;'+fd_MorInf+'</td>\n'+
						'	<td>&nbsp;</td>\n'+
						'	<td>&nbsp;</td>\n'+
						'  </tr> \n';				
  var strResultTableInit='<table id="table_results" cellpadding="0" cellspacing="0" border="0" width="700px">\n'+
						strResultHeader+
						strResultDataRow+
						'</table>'; 

function update_TT_Page(request) {
  if (request.readyState == 4) {
    if (request.status == 200) {
	  var aFrom = ''; 
	  var aTo = '';
	  var aAwb = '';
	  var aWeight = 0;
	  var aPieces = '';
	  var aMessage = '';
	  var aStrg = '';
	  var aUniqueId = '';		
	  var aRestatId = '';
	  var xmlDoc = request.responseXML; //alert (request.responseText);
	  for(var i=0; i < xmlDoc.documentElement.childNodes.length; i++) { // block <blk> 
	    var xmlBindings = xmlDoc.documentElement.childNodes[i]; // xmlBindings is now a block <blk>...</blk>
//alert ('tagName '+i+'='+xmlBindings.tagName+' TYPE='+xmlBindings.nodeType);
		if (xmlBindings.nodeType != 1) continue;
		aAwb = '';			aWeight = 0;
		aPieces = '';		aMessage = '';
		aFrom = ''; 		aFromLabel = '';
		aTo = '';			aToLabel = '';  
		aUniqueId = '';		aRestatId = '';
//alert("Checking Child Nodes: " + xmlBindings.hasChildNodes);alert ('NbEle='+xmlBindings.childNodes.length);
		for(var j=0; j<xmlBindings.childNodes.length; j++) { 
		  xmlBindings2 = xmlBindings.childNodes[j];
		  if (xmlBindings2!=null) //alert ('(xmlBindings2!=null  OK' )
		  //if (xmlBindings2.hasChildNodes) alert ('(xmlBindings2.hasChildNodes)OK')
			if ((xmlBindings2!=null)&&(xmlBindings2.hasChildNodes()))   { 
				//alert (xmlBindings2.tagName+' / '+xmlBindings2.firstChild.nodeValue);
				//alert ('xmlBindings2.tagName='+xmlBindings2.tagName+'='+xmlBindings2.firstChild.nodeValue)
				if (xmlBindings2.tagName=="awb" ){		  	  
				  aAwb = xmlBindings2.firstChild.nodeValue;		 	  
				}else if (xmlBindings2.tagName=="weight" ){
				  aWeight = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="pieces" ){
				  aPieces = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="from" ){
				  aFrom = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="fromLabel" ){
				  aFromLabel = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="to" ){
				  aTo = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="toLabel" ){
				  aToLabel = xmlBindings2.firstChild.nodeValue; 
				}else if (xmlBindings2.tagName=="uniqueId" ){
				  aUniqueId = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName=="restatId" ){
				  aRestatId = xmlBindings2.firstChild.nodeValue;
				}else if (xmlBindings2.tagName.substr(0,7)=="message" ){
				  aMessage = xmlBindings2.firstChild.nodeValue;
			}
		  }
		}
		// for j
//alert ('awb'+aAwb+'/weight'+aWeight+'/pieces'+aPieces+'/from'+aFrom+'/to'+aTo+'/message'+aMessage)		
	    if (i==0) { // metttre les 2 lignes d'entete}
		  aStrg=strResultHeader;
		  aStrg = aStrg.replace(fd_AWBnum, aAwb);
		  aStrg = aStrg.replace(fd_FROM, aFrom + ' (' + aFromLabel + ')');
		  aStrg = aStrg.replace(fd_TO, aTo + ' (' + aToLabel + ')');
		}
		// Toute balise html a été supprimée dans le fichier XML généré par getTrack.php
		aMessage = aMessage.replace("More info","");// SUPPR de ce texte qui etait un lien mais purgé dans le fichier XML
		var aLinkMessage = aMessage.replace(/CRLF/g," "); // SUPPR des CRLF pour le window.open
		aLinkMessage = aLinkMessage.replace(/\n/g," ");  // SUPPR \n pour le window.open
		var theFormLink = "javascript:reqTrackInfo('"+i+"','"+aAwb.substr(0,3)+"','"+aAwb.substr(4,8)+"','"+aFrom+"','"+aTo+"','"+aLinkMessage+"','"+aUniqueId+"','"+aRestatId+"')";
		
		var posCleanup = aMessage.indexOf("piece"); //alert ('Pos piece = '+posCleanup)
		if (posCleanup>0){
			var posCleanup2 = aMessage.indexOf("K ",posCleanup+2);
			aMessage = aMessage.substring(posCleanup2+2);
		}
		
		aMessage = aMessage.replace(/CRLF/g,"<br>"); // transformer les retour-ligne en balises html pour affichage 
		aStrg = aStrg + strResultDataRow;
		aStrg = aStrg.replace(fd_Pieces, aPieces);
		aStrg = aStrg.replace(fd_Weight, aWeight);
		aStrg = aStrg.replace(fd_Status, aMessage);
		if (aUniqueId=='' || aRestatId=='') 
			aStrg = aStrg.replace(fd_MorInf, ''); 
		  else
			aStrg = aStrg.replace(fd_MorInf, '<a onClick="'+theFormLink+'">More info</a>'); 
	  }// for i

	  obj = document.getElementById('table_results_tracking');
	  if (obj) {
		aContent = obj.innerHTML; 
		aPos = aContent.toUpperCase().indexOf('<TBODY>');
		aPos +=7;		
		finalClosing = (countLig==0)? "</TBODY></TABLE>":aContent.substring(aPos);  
		newContent = aContent.substr(0,aPos) + aStrg + finalClosing;	
		obj.innerHTML = newContent;	
	    countLig++;
	  }
	  objW = document.getElementById("animWait");
	  if (objW) objW.innerHTML = ""; //else alert ('obj animWait NOT found')
	  document.body.style.cursor='default';	  
	  sleeping = false;
    } else {
      var message = request.getResponseHeader("Status");
      if ((message.length == null) || (message.length <= 0)) {
        alert("Error! Request status is " + request.status);
      } else {
        alert(message);
      }
    }
  }
}
function reqTrackInfo(ct,awbPre,awbNum,aFrom,aTo,aMsg,aUnId,aRestatId){
  var request = getXhr();
  if (!request) {
	alert("Unable to perform your request: Error creating object!");
  }else{
	  document.body.style.cursor='wait';
  	  objW = document.getElementById("animWait");
	  if (objW) objW.innerHTML = getLoadingStrg ();

	  var strParam = "";
	  strParam = strParam + "ct="+ct; 
	  strParam = strParam + "&awbpre="+awbPre; 
	  strParam = strParam + "&awbnum="+awbNum; 
	  strParam = strParam + "&aFrom="+aFrom;
	  strParam = strParam + "&aTo="+aTo;
	  strParam = strParam + "&tracking_status="+aMsg;
	  strParam = strParam + "&unID="+aUnId;	  
	  strParam = strParam + "&restatId="+aRestatId;	  
	  d = new Date();
	  strParam = strParam + "&tmpcode="+d.getDay()+d.getHours()+d.getMinutes()+d.getSeconds();
	  strParam = encodeURI(strParam);
	  
	  var url = curHost + "Customers/getTrackInfoForm.php";  // APPEL MEME SERVEUR QUI APPEL EBUSINESS OK
	  request.onreadystatechange = function() { update_Form_Page(request); };
      request.open('POST', url, true);
	  request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	  request.setRequestHeader("Content-length", strParam.length);
	  request.setRequestHeader("Connection", "close"); 
	  request.send(strParam); 
  }
}
var currentContent='';
function update_Form_Page(request){
  if (request.readyState == 4) {
    if (request.status == 200) {
	  
	  obj = document.getElementById('table_results_tracking');
	  if (obj) {
		  currentContent = obj.innerHTML;
		  obj.innerHTML = request.responseText;
	  }	  
	  ctxobj = document.getElementById('OriginalContent');	
	  if (ctxobj) ctxobj.value = currentContent;

	  obj2 = document.getElementById('company_name');//txtTrack_multi
      if (obj2) obj2.focus();
		
	  objW = document.getElementById("animWait");
	  if (objW) objW.innerHTML = "";  //else alert ('obj animWait NOT found')
	  document.body.style.cursor='default';	 
//	  alert ('Form inserted');

	}
  }
}
