function EXTPUBCommerce(){
	var ogSelf = this;
	
	this.Recalculer = function(npNombre){
		var TotalAvTaxe = 0;
		var Taxe1 = 0;
		var Taxe2 = 0;
		var llFrais = false;	
		
		for(i=0;i<=npNombre;i++){
			Elem("Total" + i).value = ArrondiPrix(parseInt(Elem("Qte" + i).value) * Math.abs(Elem("Prix" + i).value.replace(",",".")));
			TotalAvTaxe = Math.abs(TotalAvTaxe) + parseInt(Elem("Qte" + i).value) * Math.abs(Elem("Prix" + i).value.replace(",","."));
		}
		
		if(Elem("livraison").style=="block"){
			llFrais = true;
		}
		
		Elem("TotalAvTax").value = ArrondiPrix(TotalAvTaxe + Math.abs(Elem("TotalLivraison").value.replace(",",".")));
		
		Elem("Taxe1").value = ArrondiPrix(Math.abs(Elem("TotalAvTax").value.replace(",","."))*0.060);

		if(Elem("BlocTPS")){
			if(Elem("BlocTPS").style.display=="block"){
				Elem("Taxe1").value	= "0,00";
			}
		}

		Elem("Taxe2").value = ArrondiPrix(Math.abs(Math.abs(Elem("TotalAvTax").value.replace(",",".")) + Math.abs(Elem("Taxe1").value.replace(",",".") ))*0.075);
		
		if(Elem("BlocTVQ")){
			if(Elem("BlocTVQ").style.display=="block"){
				Elem("Taxe2").value	= "0,00";
			}
		}
	
		Elem("TotalFinal").value = ArrondiPrix(Math.abs(Elem("TotalAvTax").value.replace(",",".")) + Math.abs(Elem("Taxe1").value.replace(",",".")) + Math.abs(Elem("Taxe2").value.replace(",",".")));
		
	}
	
	this.GestFraisLivraison = function(npValue,npNombreItem){
		
		var llTrouve = false;
		for(i=0;i<=npNombreItem;i++){
			
			if(Elem("ComboSupport" + i)){
				if(Elem("ComboSupport" + i).value==1 && Elem("Prix" + i).value != "0,00" && Elem("Type"+i).value!= "49"||Elem("ComboSupport" + i).value==2 &&Elem("Prix" + i).value != "0,00" && Elem("Type"+i).value!= "49"){
					
					llTrouve = true;	
				}	
			}
			else{
			if(Elem("support" + i)){
				if(Elem("Type"+i).value!="49" && Elem("Prix" + i).value != "0,00" && Elem("support" + i).innerHTML.indexOf("Papier")>-1){
					llTrouve = true;
				}
			else{
				if(Elem("Type"+i).value!="49" && Elem("Prix" + i).value != "0,00" && Elem("support" + i).innerHTML.indexOf("CD")>-1){
					llTrouve = true;
				}
			}
		}
	}
}
		
		if(llTrouve == true && Elem("TotalAvTax").value!="0,00"){
			Elem("livraison").style.display = "block";
			Elem("TotalLivraison").value = "5,00";
			if(Elem("Flivraison")){
				Elem("Flivraison").value = "1";
				}
			}
		else{
			
			Elem("livraison").style.display = "none";
			Elem("TotalLivraison").value = "0,00";
			if(Elem("Flivraison")){
				Elem("Flivraison").value = "0";
				}
			}
		
		ogSelf.Recalculer(npNombreItem);
		
		}
	
	this.ShowHideTax = function(npID,npNbrArticle){
		
		switch (npID)
		{
		case 1:
			if(Elem("BlocTPS").style.display == "none"){
				Elem("BlocTPS").style.display = "block";
				Elem("Taxe1").value = "0,00";		
			}
			else{
				Elem("BlocTPS").style.display = "none";
				Elem("Taxe1").value = Elem("Taxe1Backup").value

			}
			break;
		
		case 2:
			if(Elem("BlocTVQ").style.display == "none"){
				Elem("BlocTVQ").style.display = "block";
				Elem("Taxe2").value = "0,00";

			}
			else{
				Elem("BlocTVQ").style.display = "none";
				Elem("Taxe2").value = Elem("Taxe2Backup").value
			}
			break;
		case 3:
			Elem("Taxe1").value = Elem("Taxe1Backup").value;
			Elem("Taxe2").value = Elem("Taxe2Backup").value;
			break;
		}
		
		ogSelf.Recalculer(npNbrArticle);
	
	}
	
	this.Facturer = function(npID){		
		Elem("Rebuilt").value = npID;
		Elem('boPrinc').href='javascript:none();';
		Elem("frmPanier").submit();
	
	}
	
	this.CacherFacturation = function(){
	
		if(Elem("conteneurFacturation").style.display == "none"){
			Elem("conteneurFacturation").style.display = "block"
			}
		else{
			Elem("conteneurFacturation").style.display = "none"
			}
	}
	
	this.SetAdresse = function(spNumeroParent,npNbrAddresse){	
	
		for(i=1;i<=parseInt(npNbrAddresse+1);i++){
		 	if(i == parseInt(spNumeroParent)){
				ShowBloc("Add" + i);
				document.getElementById("AddresseLiv").value = document.getElementById("Add" + i).innerHTML ;
				if(i==parseInt(npNbrAddresse+1)){
					document.getElementById("AddresseLiv").value="Insérez votre adresse complète";
					if (ogCfg.Langue != "fra")
						document.getElementById("AddresseLiv").value="Fill your complete address";	
				}
			}
			else{
				HideBloc("Add" + i)	;
			}
		}
	}
	
	this.Exemption = function(spTaxe){
		if(Elem("ComboEx" + spTaxe)){
			Elem(spTaxe + "No").value = Elem("ComboEx" + spTaxe).value;
			Elem(spTaxe + "Cie").value = Elem("ComboEx" + spTaxe).options[Elem("ComboEx" + spTaxe).selectedIndex].text;	
		
		if( Elem("ComboEx" + spTaxe).value == "" ){
			Elem(spTaxe + "No").readOnly = false;
			}
		else
			{
			Elem(spTaxe + "No").readOnly = true;			
			}
		}
	}
	
	this.SetAdresseFac = function(spNumeroParent,npNbrAddresse){	
	
		for(i=1;i<=parseInt(npNbrAddresse+1);i++){
		 	if (document.getElementById("AddFac" + i)){
				if(i == parseInt(spNumeroParent)){
					ShowBloc("AddFac" + i);
					document.getElementById("AddresseFac").value = document.getElementById("AddFac" + i).innerHTML ;
					if(i==parseInt(npNbrAddresse)){
						document.getElementById("AddresseFac").value="Insérez votre adresse complète";
						if (ogCfg.Langue != "fra")
							document.getElementById("AddresseFac").value="Fill your complete address";
					}
				}
				else{
					HideBloc("AddFac" + i);
					}
				}
			}
		}
	}
