function SafeNumber( val )
{

	var retVal = val;

	if ( isNaN( val ) == true ) 
	{
	
		retVal = '';
	
		if ( val.length > 0 ) 
		{
			for ( i = 0; i < val.length; i++ )
			{
				ch = val.charAt( i );
				
				if ( ( ch >= "0" && ch <= "9" ) || ( ch == "." ) ) retVal = retVal + val.charAt( i );
			}
		} 
		else
		{
			retVal = 0;					
		}
		
	}
	
	return retVal;
	
}


function SetDecimal( val, place )
{

	var p = Math.pow( 10, place );

	var retVal = ( Math.round( val * p ) ) / p;
	
	return retVal;

}

function FormatCurrency( val, place )
{
	var i = 0;
	
	var ch = "";
	
	var retVal = ""
	
	var tmp = ""
	
	var bPoint = false;
	
	var postPoint = 0;

	tmp = "$" + SetDecimal( val, place );
	
	for( i = 0; i < tmp.length; i ++ )
	{
		ch = tmp.charAt( i );
		
		if ( ch == "." ) 
		{ 
		
			bPoint = true; 
			
			if ( place == 0 ) break;
		
		}
				
		retVal = "" + retVal + ch;
		
		if ( bPoint == true ) 
		{
			if ( postPoint > place ) break;
		
			postPoint ++;			
		}
		
	}
	
	
	i = 0;

	if ( place > 0 )
	{
		if ( bPoint == false ) retVal = retVal + ".";
		
		for ( ; postPoint <= place; postPoint++ )
		{
			retVal = retVal + "0"		
		}
	}
	

	
	return retVal;

}


function UpdateAmounts( sku )
{

	var qtyID = "quantity" + sku;

	var rateID = "rate" + sku;
	
	var amountID = "amount" + sku;
	
	var quantity = document.formShoppingCart.elements[ qtyID ].value;	
	
	var pricePerUnit = SafeNumber( document.formShoppingCart.elements[ rateID ].value );
	
	var totalItemPrice = document.formShoppingCart.elements[ amountID ].value;
	
	totalItemPrice = pricePerUnit * quantity;
	
	document.formShoppingCart.elements[ amountID ].value = FormatCurrency( totalItemPrice , 2 );
	
	return 0;

}
