function calculValue( id, price, engage, remise, tva, hover) {

	var TotalHT = 0;	
	var TotalTVA;
	var TotalHover;

	quantity = parseInt(document.getElementById('quantity_'+id).value);
	if( isNaN(quantity)) { quantity = 0; }	

	priceHTNonHover = quantity * parseFloat(price) * parseInt(engage);
	priceHTHover = format(parseFloat(priceHTNonHover) - ((parseFloat(priceHTNonHover) * parseInt(remise))/100), 2, ' ', ',');

	TotalHTHover = 	document.getElementById('lineTotalHTHover_'+id);
	TotalHTHover.innerHTML = priceHTHover+"€";

	for( var i=0; i<basket_nbLines; i++) {
		if( document.getElementById( 'lineTotalHTHover_'+i)) {
			total = document.getElementById( 'lineTotalHTHover_'+i).innerHTML;
			total = total.replace(" ", "");
			total = total.replace(",",".");
			total = total.replace("€","");
			total_float = parseFloat(total);
			TotalHT = parseFloat(TotalHT) + total_float;
		}
	}
	if( document.getElementById('TotalHover')) {
		TotalHover = (TotalHT*parseFloat(hover))/100;
		TdTotalHover = document.getElementById('TotalHover');
		TdTotalHover.innerHTML = format(TotalHover,2,' ',',')+"€";
		NewTotalHT = TotalHT - TotalHover;
	} else {
		NewTotalHT = TotalHT;
	}

	NewTotalHT = format(parseFloat(NewTotalHT), 2, ' ', ',');
	TdTotalHT = document.getElementById('TotalHT');
	TdTotalHT.innerHTML = NewTotalHT+"€";
	
	NewTotalHT = NewTotalHT.replace(" ","");
	NewTotalHT = NewTotalHT.replace(",",".");
	NewTotalHT = parseFloat(NewTotalHT);
	TotalTVA = format(((NewTotalHT)*parseFloat(tva))/100, 2, ' ',',');
	TdTotalTVA = document.getElementById('TotalTVA');
	TdTotalTVA.innerHTML = TotalTVA+"€";

	TotalTVA = TotalTVA.replace(" ","");
	TotalTVA = TotalTVA.replace(",",".");
	TotalTVA = parseFloat(TotalTVA);
	TdTotalTTC = document.getElementById('TotalTTC');
	TdTotalTTC.innerHTML = format(NewTotalHT + TotalTVA, 2, ' ', ',')+"€";	
}

function offres( id) {

	if( parseInt( document.getElementById('space['+id+']').innerHTML)){
		space = parseInt( document.getElementById('space['+id+']').innerHTML);
	} else {
		space = parseInt( document.getElementById('space['+id+']').value);
	}

	engage = parseInt( document.getElementById('engagement['+id+']').value);

	price = document.getElementById('price['+id+']');

	price.innerHTML = format(parseFloat(priceTab[space][engage]), 2, ' ', ',')+"€";

}

function modify( id) {

	if( parseInt( document.getElementById('newSpace['+id+']').innerHTML)){
		newSpace = parseInt( document.getElementById('newSpace['+id+']').innerHTML);
	} else {
		newSpace = parseInt( document.getElementById('newSpace['+id+']').value);
	}
	
	if( parseInt( document.getElementById('oldSpace['+id+']').innerHTML)){
		oldSpace = parseInt( document.getElementById('oldSpace['+id+']').innerHTML);
	} else { 
		oldSpace = parseInt( document.getElementById('oldSpace['+id+']').value);
	}

	price = document.getElementById('price['+id+']');

	tmp =  parseFloat(priceTab[newSpace]) - parseFloat(priceTab[oldSpace]);

	price.innerHTML = format(tmp.toFixed(2), 2, ' ', ',')+"€";

}

function format(valeur, decimal, separateurMillier, separateurDecimal) {
// formate un chiffre avec 'decimal' chiffres après la virgule et un separateur
	var deci=Math.round( Math.pow(10,decimal)*(Math.abs(valeur)-Math.floor(Math.abs(valeur)))) ; 
	var val=Math.floor(Math.abs(valeur));
	if ((decimal==0)||(deci==Math.pow(10,decimal))) {val=Math.floor(Math.abs(valeur)); deci=0;}
	var val_format=val+"";
	var nb=val_format.length;
	for (var i=1;i<4;i++) {
		if (val>=Math.pow(10,(3*i))) {
			val_format=val_format.substring(0,nb-(3*i))+separateurMillier+val_format.substring(nb-(3*i));
		}
	}
	if (decimal>0) {
		var decim=""; 
		for (var j=0;j<(decimal-deci.toString().length);j++) {decim+="0";}
		deci=decim+deci.toString();
		val_format=val_format+separateurDecimal+deci;
	}
	if (parseFloat(valeur)<0) {val_format="-"+val_format;}
	return val_format;
}


