function formatNumber( num ) {
	if( isNaN( num ) )
		num = 0;
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = String(Math.floor(num/100));
	if(cents < 10)
		cents = "0" + cents;
	return ('$' + num + '.' + cents);
}

function updateTotal( ) {
	var price = 0;
	var years_left = 0;

	var nonexpiring = 0;
	var contract_length = 0;

	var total = 0;
  var rb = document.order_form.package_id;

	// determine which Id is selected amd get costs
	for(var i = 0; i < rb.length; i++) {
		str = rb[i].value;
		if( rb[i].checked ) {
      document.getElementById("package_row_"+str).className='highlight';
			price = parseFloat( document.getElementById("package_price_"+str).value );
			years_left = parseInt( document.getElementById("package_years_purchased_"+str).value );
			nonexpiring = document.getElementById("package_nonexpiring_"+str).value;
		} else {
      document.getElementById("package_row_"+str).className='nohighlight';
		}
	}

	// determine cost * years if non expiring
	if( nonexpiring == 't' ) {
		document.getElementById("contract_length").disabled="disabled";
		total = price;
	} else {
    contract_length = parseInt( document.getElementById("contract_length").value );
    document.getElementById("contract_length").disabled="";
    document.getElementById("total").disabled="enabled";
		total = price * contract_length/years_left;
    document.getElementById("total").disabled="disabled";
	}
	// post new value to total
	document.getElementById('total').value = formatNumber( total );
}
