		var tps;
		var tvq;
		
		function checkEnterValidation(e, sequence){
			var unicode=e.charCode? e.charCode : e.keyCode;
			if(unicode==13){
				call(sequence);
			} else {
				return false;
			}
		}
		
		function addItem2(numeroProduit){	
			if(document.getElementById("linecount")!=null){
				var linecount = document.getElementById("linecount").value*1;
				var isFull = 1;
				var position="";
				for(x=0;x<linecount;x++){
					position=x;
					if(document.getElementById("numeroproduit"+x).value==""){
						isFull=0;
						break;
					}
				}
				if(isFull==1){
					addRow();
					position++;
				}
				
			  	document.getElementById("numeroproduit"+position).value = numeroProduit;
			  	call(position);
			}
		}
			
		function compterBoite(sequence){
			var numeroproduitqte = document.getElementById("numeroproduitqte"+sequence).value;
			var numeroproduitboiteqte = document.getElementById("numeroproduitboiteqte"+sequence).innerHTML*1;
			document.getElementById("numeroproduitboiteqtetotal"+sequence).innerHTML = numeroproduitqte*numeroproduitboiteqte;
		}
		
		function verifierQte(sequence){
			if(document.getElementById("numeroproduitqte"+sequence).value==""){
				document.getElementById("numeroproduitqte"+sequence).value="0";
			}
		}
		
		function trouverPrix(sequence){
			
		   var req;
		   var numeroProduit = document.getElementById("numeroproduit"+sequence);
		   var numeroproduitboiteqtetotal = document.getElementById("numeroproduitboiteqtetotal"+sequence);
		   
		   var url = "servlet/produitPrix?numeroProduit=" + encodeURIComponent(numeroProduit.value)+"&&numeroproduitqte="+encodeURIComponent(numeroproduitboiteqtetotal.innerHTML);

		   if (typeof XMLHttpRequest != "undefined") {
		       req = new XMLHttpRequest();
		   } else if (window.ActiveXObject) {
		       req = new ActiveXObject("Microsoft.XMLHTTP");
		   }
		   req.open("GET", url, true);
		   req.send(null);
		   
		   req.onreadystatechange = function() { 
			   if(req.readyState == 4) { 
			      var prix = (req.responseXML.getElementsByTagName("prix")[0]).childNodes[0].nodeValue;
			      prix=(prix*1).toFixed(2);
			      document.getElementById("numeroproduitprix"+sequence).innerHTML=prix;
			      compterTotal(sequence);
			   } 
			}
		}
		
		function compterTotal(sequence){
		 	if(document.getElementById("numeroproduitqte"+sequence).value!=""){
		 		var qte = document.getElementById("numeroproduitqte"+sequence).value;
		 		var boiteqte = document.getElementById("numeroproduitboiteqte"+sequence).innerHTML;
		 		var prix = document.getElementById("numeroproduitprix"+sequence).innerHTML;
		 	    var total = (qte*boiteqte)*prix;
		 	  	if(total*0==0){
			    	document.getElementById("numeroproduittotal"+sequence).innerHTML=total.toFixed(2);
			    }
			}
			compterTotalFinale();
		}
		
		function compterTotalFinale(){
		   var req;
		   var soustotal = 0;
		   for(x=0;x<document.getElementById("linecount").value;x++){
				soustotal = soustotal +  document.getElementById("numeroproduittotal"+x).innerHTML*1;
		   }
		   document.getElementById("soustotalcumul").innerHTML = soustotal.toFixed(2);
			
		   if(tps==undefined||tvq==undefined){
		   	   var url = "servlet/getTaxes";

			   if (typeof XMLHttpRequest != "undefined") {
			       req = new XMLHttpRequest();
			   } else if (window.ActiveXObject) {
			       req = new ActiveXObject("Microsoft.XMLHTTP");
			   }
			   req.open("GET", url, true);
			   req.send(null);
			   
			   req.onreadystatechange = function() { 
				   if(req.readyState == 4) { 
					      tps = ((req.responseXML.getElementsByTagName("tps")[0]).childNodes[0].nodeValue)/100;
					      tvq = ((req.responseXML.getElementsByTagName("tvq")[0]).childNodes[0].nodeValue)/100;
						  
						  var tpscumul = (soustotal * (tps)).toFixed(2);
						  var tvqcumul = (((soustotal * tps)+soustotal)*tvq).toFixed(2);
						  
						  document.getElementById("tpscumul").innerHTML = tpscumul;
						  document.getElementById("tvqcumul").innerHTML = tvqcumul;
						  document.getElementById("totalcumul").innerHTML = (soustotal*1+tpscumul*1+tvqcumul*1).toFixed(2);
					   } 
				}
		   }else{
		   		  var tpscumul = (soustotal * (tps)).toFixed(2);
				  var tvqcumul = (((soustotal * tps)+soustotal)*tvq).toFixed(2);
				  
				  document.getElementById("tpscumul").innerHTML = tpscumul;
				  document.getElementById("tvqcumul").innerHTML = tvqcumul;
				  document.getElementById("totalcumul").innerHTML = (soustotal*1+tpscumul*1+tvqcumul*1).toFixed(2);
		   }
		}
		
		function effacerLigne(sequence, confirmation){
			if(confirmation=="oui"){
				if(document.getElementById("numeroproduit"+sequence).value!=""){
					if(confirm("Voulez-vous effacer le produit '"+document.getElementById("numeroproduit"+sequence).value+"' ?")){
						document.getElementById("numeroproduit"+sequence).value = "";
						document.getElementById("numeroproduitdesc"+sequence).innerHTML = "&nbsp;";
						document.getElementById("numeroproduitqte"+sequence).value = "1";
						document.getElementById("numeroproduitboiteqte"+sequence).innerHTML = "0";
						document.getElementById("numeroproduitboiteqtetotal"+sequence).innerHTML = "0";
						document.getElementById("numeroproduitprix"+sequence).innerHTML = "0.00";
						document.getElementById("numeroproduittotal"+sequence).innerHTML = "0.00";
					}
				}
			}else{
				document.getElementById("numeroproduit"+sequence).value = "";
				document.getElementById("numeroproduitdesc"+sequence).innerHTML = "&nbsp;";
				document.getElementById("numeroproduitqte"+sequence).value = "1";
				document.getElementById("numeroproduitboiteqte"+sequence).innerHTML = "0";
				document.getElementById("numeroproduitboiteqtetotal"+sequence).innerHTML = "0";
				document.getElementById("numeroproduitprix"+sequence).innerHTML = "0.00";
				document.getElementById("numeroproduittotal"+sequence).innerHTML = "0.00";
			}
			compterTotalFinale();
		}	
			
		function call(sequence){
		   var req;
		   var numeroProduit = document.getElementById("numeroproduit"+sequence);
		   if(numeroProduit.value!=""){
			   var url = "servlet/produitDescription?numeroProduit=" + encodeURIComponent(numeroProduit.value);
	
			   if (typeof XMLHttpRequest != "undefined") {
			       req = new XMLHttpRequest();
			   } else if (window.ActiveXObject) {
			       req = new ActiveXObject("Microsoft.XMLHTTP");
			   }
			   req.open("GET", url, true);
			   req.send(null);
			   req.onreadystatechange = function() { 
				   if(req.readyState == 4) { 
				      var description = (req.responseXML.getElementsByTagName("description")[0]).childNodes[0].nodeValue;
				      var boiteqte = (req.responseXML.getElementsByTagName("boiteqte")[0]).childNodes[0].nodeValue;
				      document.getElementById("numeroproduitdesc"+sequence).innerHTML=description;
				      document.getElementById("numeroproduitdesc"+sequence).style.height="100%";
				      document.getElementById("numeroproduitboiteqte"+sequence).innerHTML=boiteqte;
				      
				      compterBoite(sequence);
				      trouverPrix(sequence);

				   	  if(document.getElementById("linecount").value-1==sequence){
					     addRow();
					  }
					  if(description!="Code produit invalide"){
					  	document.getElementById("isvalid"+sequence).value = "true";
					  }
				   } 
				}
			}else{
				effacerLigne(sequence,"non");
			}
		} 
		
		function addRow(){
			var linecount = document.getElementById("linecount").value;
			document.getElementById("linecount").value = (document.getElementById("linecount").value*1)+1;
		    var tbody = document.getElementById("mainTable").getElementsByTagName("TBODY")[0];
		    var row = document.createElement("TR");
		    var td1 = document.createElement("TD");
		    	td1.className= "font1Subtitle";
		    	var input1 = document.createElement("INPUT");
		    		input1.setAttribute("maxLength", 15);
		    		input1.setAttribute("size",12);
		    		input1.type = "text"
					input1.id = "numeroproduit"+linecount;
					input1.name = "numeroproduit"+linecount;
				var input1a = document.createElement("INPUT");
		    		input1a.type = "hidden"
					input1a.id = "isvalid"+linecount;
					input1a.name = "isvalid"+linecount;
					input1a.value = "false";
		    	td1.appendChild(input1);
		    	td1.appendChild(input1a);
		    	
		    var td2 = document.createElement("TD");
		    	td2.className= "font1SubtitleDesc";
		    	var div2 = document.createElement("DIV");
					div2.id = "numeroproduitdesc"+linecount;
					div2.name = "numeroproduitdesc"+linecount;
					div2.innerHTML = "&nbsp;";
		   	    td2.appendChild (div2);
		   	
		   	var td3 = document.createElement("TD");
		    	td3.className= "font1Subtitle";
		    	var input3 = document.createElement("INPUT");
					input3.id = "numeroproduitqte"+linecount;
					input3.name = "numeroproduitqte"+linecount;
					input3.type = "text"
					input3.setAttribute("maxLength", 3);
		    		input3.setAttribute("size",3);
		    		input3.value = "1";
		    	var span3X = document.createElement("SPAN");
		    	    span3X.innerHTML = "X ";
		    	var span3 = document.createElement("SPAN");
		    		span3.id = "numeroproduitboiteqte"+linecount;
		    		span3.innerHTML = "0";
		    	var span3Y = document.createElement("SPAN");
		    	    span3Y.innerHTML = "=";
		    	var span3a = document.createElement("SPAN");
		    		span3a.id = "numeroproduitboiteqtetotal"+linecount;
		    		span3a.innerHTML = "0";
		    	td3.appendChild(input3);
		    	td3.appendChild(span3X);
		    	td3.appendChild(span3);
		    	td3.appendChild(span3Y);
		    	td3.appendChild(span3a);
				
		   	var td4 = document.createElement("TD");
		    	td4.className= "font1Subtitle";
		    	td4.setAttribute("align","right");
		    	var span4 = document.createElement("SPAN");
		    		span4.id = "numeroproduitprix"+linecount;
		    		span4.innerHTML = "0.00 ";
		    	var span4X = document.createElement("SPAN");
		    	    span4X.innerHTML = " $";
		    	td4.appendChild(span4);
		    	td4.appendChild(span4X);
		    var td5 = document.createElement("TD");
		    	td5.className= "font1Subtitle";
		    	td5.setAttribute("align","right");
		    	var span5 = document.createElement("SPAN");
		    		span5.id = "numeroproduittotal"+linecount;
		    		span5.innerHTML = "0.00 ";
		    	var span5X = document.createElement("SPAN");
		    	    span5X.innerHTML = " $";
		    	td5.appendChild(span5);
		    	td5.appendChild(span5X)
		    var td6 = document.createElement("TD");
		    	td6.className= "font1Subtitle";
		    	var img6 = document.createElement("IMG");
		    		img6.id = "img"+linecount;
		    		img6.src = "images/relieurstock/x_rouge.gif";
		    	td6.appendChild(img6); 
		    	
		    row.appendChild(td1);
		    row.appendChild(td2);
		    row.appendChild(td3);
		    row.appendChild(td4);
		    row.appendChild(td5);
		    row.appendChild(td6);
		    tbody.appendChild(row);
		    
		    document.getElementById("numeroproduit"+linecount).onchange=function(){call(linecount)};
		    document.getElementById("numeroproduitqte"+linecount).onkeypress=function(){return numbersonly(event,linecount)};
		    document.getElementById("numeroproduitqte"+linecount).onchange=function(){verifierQte(linecount);compterTotal(linecount);compterBoite(linecount);trouverPrix(linecount);};
		    document.getElementById("img"+linecount).onclick=function(){effacerLigne(linecount,'oui')};
		}
		
		function addItem(){
			var linecount = document.getElementById("linecount").value*1;
		
			var isFull = 1;
			var position="";
			for(x=0;x<linecount;x++){
				position=x;
				if(document.getElementById("numeroproduit"+x).value==""){
					isFull=0;
					break;
				}
			}
			if(isFull==1){
				addRow();
				position++;
			}
			
		   var req;
		   var type="";
		   var capacite="";
		   var format="";
		   
		   for(x=0;x<document.frmAideCommande.type.length;x++){
		   	   if(document.frmAideCommande.type[x].checked==true){
		   	   	  type = document.frmAideCommande.type[x].value;
		   	   }
		   }
		   for(x=0;x<document.frmAideCommande.capacite.length;x++){
		   	   if(document.frmAideCommande.capacite[x].checked==true){
		   	   	  capacite = document.frmAideCommande.capacite[x].value;
		   	   }
		   }
		   for(x=0;x<document.frmAideCommande.format.length;x++){
		   	   if(document.frmAideCommande.format[x].checked==true){
		   	   	  format = document.frmAideCommande.format[x].value;
		   	   }
		   }
		   
		   var url = "servlet/aideCommande?type=" + encodeURIComponent(type)+"&&capacite="+encodeURIComponent(capacite)+"&&format="+encodeURIComponent(format);

		   if (typeof XMLHttpRequest != "undefined") {
		       req = new XMLHttpRequest();
		   } else if (window.ActiveXObject) {
		       req = new ActiveXObject("Microsoft.XMLHTTP");
		   }
		   req.open("GET", url, true);
		   req.send(null);
		   
		   req.onreadystatechange = function() { 
			   if(req.readyState == 4) {
			      var numeroProduit = (req.responseXML.getElementsByTagName("code")[0]).childNodes[0].nodeValue;
			      var couleur="";
			      for(x=0;x<document.frmAideCommande.couleur.length;x++){
				   	  if(document.frmAideCommande.couleur[x].checked==true){
				   	   	  couleur = document.frmAideCommande.couleur[x].value;
				   	  }
				  }

			      document.getElementById("numeroproduit"+position).value = numeroProduit.substring(0,numeroProduit.length-2)+couleur;
				  call(position);
			   } 
			}
		}