function order_detail(elem_id) {
  if(parseInt(document.getElementById(elem_id).value) > -1)
    {
			if (parseInt(document.getElementById(elem_id).value) == 0)
			  {
					document.getElementById(elem_id + '_detail').style.display = 'none';
					document.getElementById(elem_id + '_detail_quan').value = "";
					document.getElementById(elem_id + '_detail_total_tax').value = "";
					document.getElementById(elem_id + '_detail_subtotal').value = "";
					
					doLabel(elem_id + '_detail_quan_label', "");
					doLabel(elem_id + '_detail_book_total_label', "");
					doLabel(elem_id + '_detail_total_tax_label', "");
					doLabel(elem_id + '_detail_subtotal_label', "");
					
					var moneris_invoice_line  = document.getElementById(elem_id + '_detail_moneris_id').value;
					document.getElementById(elem_id + '_detail_prod_id').name = 'XXid' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_prod_desc').name = 'XXdescription' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_quan').name = 'XXquantity' + moneris_invoice_line;				
					document.getElementById(elem_id + '_detail_unit_price').name = 'XXprice' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_subtotal').name = 'XXsubtotal' + moneris_invoice_line;
				}
		  else
			  {
					document.getElementById(elem_id + '_detail').style.display = "";
					var moneris_invoice_line  = document.getElementById(elem_id + '_detail_moneris_id').value;					
					var quantity = document.getElementById(elem_id).value;
					var book_total_cost = quantity * document.getElementById(elem_id + '_detail_unit_price').value;
					var tax = book_total_cost * .05;
					var subtotal = book_total_cost;
					
					document.getElementById(elem_id + '_detail_prod_id').name = 'id' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_prod_desc').name = 'description' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_quan').name = 'quantity' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_unit_price').name = 'price' + moneris_invoice_line;
					document.getElementById(elem_id + '_detail_subtotal').name = 'subtotal' + moneris_invoice_line;
					
					var rdn_book_total = mathRound(book_total_cost);
					var rdn_total_tax = mathRound(tax);
					var rdn_subtotal = mathRound(subtotal);
					document.getElementById(elem_id + '_detail_quan').value = quantity;
					document.getElementById(elem_id + '_detail_total_tax').value = rdn_total_tax;
					document.getElementById(elem_id + '_detail_subtotal').value = rdn_subtotal;
					
					rdn_total_tax = rdn_total_tax * 1;
					rdn_subtotal = rdn_subtotal * 1;
					
					var rdn_total_with_tax = mathRound(rdn_total_tax + rdn_subtotal);
					doLabel(elem_id + '_detail_quan_label', quantity);
					doLabel(elem_id + '_detail_book_total_label', '$' + mathRound(rdn_book_total));
					doLabel(elem_id + '_detail_total_tax_label', '$' + mathRound(rdn_total_tax));
					doLabel(elem_id + '_detail_subtotal_label', '$' + mathRound(rdn_total_with_tax));
				}
    }
  else
    {
      alert('Please only enter a value of 0 or greater');
			document.getElementById(elem_id).value = 0;
			document.getElementById(elem_id).focus();
			document.getElementById(elem_id).select();
    }
	amount_to_be_charged();
}

function amount_to_be_charged() {
	
	var fg_total = document.getElementById('fg_detail_subtotal').value * 1;
	var series_total = document.getElementById('series_detail_subtotal').value * 1;
	var starvation_total = document.getElementById('starvation_detail_subtotal').value * 1;
	var libations_total = document.getElementById('libations_detail_subtotal').value * 1;
	var total = mathRound(fg_total + series_total + starvation_total + libations_total);
	
	var fg_tax_total = document.getElementById('fg_detail_total_tax').value * 1;
	var series_tax_total = document.getElementById('series_detail_total_tax').value * 1;
	var starvation_tax_total = document.getElementById('starvation_detail_total_tax').value * 1;
	var libations_tax_total = document.getElementById('libations_detail_total_tax').value * 1;
	var tax_total = mathRound(fg_tax_total + series_tax_total + starvation_tax_total + libations_tax_total);
	document.getElementById('order_total_gst').value = tax_total;
	
	total = total * 1;
	tax_total = tax_total * 1;
	var shipping_cost = document.getElementById('shipping_cost').value;
	var new_shipping_cost = 0;
	if (total == 0)
	{
	  document.getElementById('shipping_cost').value = '0';
		doLabel('shipping_cost_label', '$0.00');
	}
	else if (total < 18)
	{
	  document.getElementById('shipping_cost').value = '3.50';
		doLabel('shipping_cost_label', '$3.50');
		new_shipping_cost = 3.5;
	}
	else
	{
	  document.getElementById('shipping_cost').value = '7.00';
		doLabel('shipping_cost_label', '$7.00');
		new_shipping_cost = 7;
	}


	var total_with_tax = mathRound(total + tax_total + new_shipping_cost);
	document.getElementById('order_total_amount').value = total_with_tax;
	doLabel('order_total_amount_label', '$' + total_with_tax);
	
}

function bill_to_ship(elem_id) {
	document.getElementById('ship_' + elem_id).value = document.getElementById('bill_' + elem_id).value;
}

function all_bill_to_ship() {
	document.getElementById('ship_first_name').value = document.getElementById('bill_first_name').value;
	document.getElementById('ship_last_name').value = document.getElementById('bill_last_name').value;
	document.getElementById('ship_company_name').value = document.getElementById('bill_company_name').value;
	document.getElementById('ship_address_one').value = document.getElementById('bill_address_one').value;
	document.getElementById('ship_city').value = document.getElementById('bill_city').value;
	document.getElementById('ship_state_or_province').value = document.getElementById('bill_state_or_province').value;
	document.getElementById('ship_postal_code').value = document.getElementById('bill_postal_code').value;
	document.getElementById('ship_country').value = document.getElementById('bill_country').value;
	document.getElementById('ship_phone').value = document.getElementById('bill_phone').value;
	document.getElementById('ship_fax').value = document.getElementById('bill_fax').value;
	document.getElementById('ship_email').value = document.getElementById('bill_email').value;
}

function doLabel(elem_id, label_text) {
  var tag = document.getElementById(elem_id);
	tag.innerHTML = label_text; 
	tag.innerText = label_text; 
}

function mathRound(math_val) {
	if (math_val != 0)
	{
	  var ret_val = Math.round(math_val*100)/100;
	  ret_val = ret_val.toString();
	  ret_part = ret_val.split('.');
	  var val_dec = ret_part[1];
	  if (val_dec.length == 1)
	    {val_dec += "0";}
    else if (val_dec.length == 0)
	    {val_dec = "00";}
	  return ret_part[0] + '.' + val_dec;
	}
	else
	{
		return 0.00
	}
	
}