var Commerce_TotalField = null;
var Commerce_FieldPrices = new Array();
var Commerce_InitialTotal = 0;

function Commerce_CurrencyString(price) 
{ 
   var currency = ""+(price + 0.00500000001); 
   var nPos = currency.indexOf('.'); 
   if (nPos < 0) return currency+'.00'; 
   currency = currency.slice(0, nPos + 3); 
   var nZero = 3 - (currency.length - nPos); 
   for (var i = 0; i < nZero; i++) currency += '0'; 
   return '$'+currency; 
} 

function Commerce_ChangeTotal()
{
	var fieldName;
	var totalField;
	var total; var price;
	if (!Commerce_TotalField) return true;
	if (!Commerce_FieldPrices) return true;
	if (!(totalField = HTML_Form_Field(Commerce_TotalField))) return true;
	total = Commerce_InitialTotal;
	for (fieldName in Commerce_FieldPrices) {
		if (!Commerce_FieldPrices[fieldName]) continue;
		price = parseInt(HTML_Form_Value(fieldName)) * Commerce_FieldPrices[fieldName];
		if (!isNaN(price) && price > 0) total += price;
		
	}
	totalField.value = Commerce_CurrencyString(total);
	return true;
}
