function calc(x, y) {
	if (isNaN(y))
		y = 0;
	value = x*y;
	if (y%1 != 0 || y<0) // fractional quantity is invalid, so set to 0
		value = 0;
	return format(value);
}

function format(value) { // format in US monetary notation
	if (isNaN(value))
		value = 0;
	temp = Math.round(value*100)/100;
	if ((temp*100)%100 == 0)
		return temp + ".00";
	if ((temp*100)%10 == 0)
		return temp + "0";
	str = new String(temp);
	i = str.lastIndexOf(".");
	if ((i+1) == str.length-1)
		return temp + "0";
	return temp;
}
//UPDATE THE INFO BELOW TO REFLECT YOU PRODUCTS AND PRICES.

function update(f) {
        f.Revival_Amt.value=calc(10.00,  f.Revival_Qty.value);
	f.Get_Mate_Amt.value=calc(12.00,  f.Get_Mate_Qty.value);
	f.Jump_Start_Amt.value=calc(3.00,  f.Jump_Start_Qty.value);
	f.Unlocking_Heavens_Amt.value=calc(8.00,  f.Unlocking_Heavens_Qty.value);
	f.My_Country_Tis_Amt.value=calc(1.00,  f.My_Country_Tis_Qty.value);
	f.Resource_Book_Amt.value=calc(10.00, f.Resource_Book_Qty.value);
	f.Spanish_Resource_Book_Amt.value=calc(10.00,  f.Spanish_Resource_Book_Qty.value);
	f.Family_Prayer_Amt.value=calc(4.00,     f.Family_Prayer_Qty.value);
	f.Praying_City_Amt.value=calc(4.00,    f.Praying_City_Qty.value);
	f.Praying_Future_Amt.value=calc(4.00,    f.Praying_Future_Qty.value);
	f.Fear_Not_Amt.value=calc(3.00,    f.Fear_Not_Qty.value);	
	f.For_Israel_Amt.value=calc(3.00,    f.For_Israel_Qty.value);
	f.Scriptural_Prayers_Amt.value=calc(10.00,    f.Scriptural_Prayers_Qty.value);
	f.Resource_Book_CD_Amt.value=calc(15.00,    f.Resource_Book_CD_Qty.value);
	f.Healing_Waters_Amt.value=calc(5.00,    f.Healing_Waters_Qty.value);
	f.Praying_Future_Tape_Amt.value=calc(5.00,    f.Praying_Future_Tape_Qty.value);
	f.DVD_Unlock_Amt.value=calc(20.00,    f.DVD_Unlock_Qty.value);
	
	sub =   eval(f.Revival_Amt.value) +
	        eval(f.Unlocking_Heavens_Amt.value) +
		eval(f.Get_Mate_Amt.value) +
		eval(f.Jump_Start_Amt.value) +
		eval(f.Resource_Book_Amt.value) +
		eval(f.My_Country_Tis_Amt.value) +
		eval(f.Spanish_Resource_Book_Amt.value) +
		eval(f.Family_Prayer_Amt.value) +
		eval(f.Praying_City_Amt.value) +
		eval(f.Praying_Future_Amt.value)+
		eval(f.Fear_Not_Amt.value)+		
		eval(f.For_Israel_Amt.value)+
		eval(f.Scriptural_Prayers_Amt.value)+
		eval(f.Resource_Book_CD_Amt.value)+
		eval(f.Healing_Waters_Amt.value)+
		eval(f.Praying_Future_Tape_Amt.value)+
		eval(f.DVD_Unlock_Amt.value)
		
		f.subTotal.value = format(sub);
		f.SandH.value = format(shipping(sub));

//UPDATE THE INFO ABOVE TO REFLECT YOU PRODUCTS AND PRICES.

//UPDATE THE INFO ABOVE TO REFLECT YOU TAX RATE.
	percent = 0;
	if (f.percent_tax.checked == true)
		percent = 7.00;
	if (percent < 0)
		percent = 0;
	f.tax.value = format((sub*percent)/100);
	f.Total.value = format(eval(sub) + eval(f.SandH.value) + eval(f.tax.value));
}

//UPDATE THE INFO BELOW TO REFLECT YOUR SHIPPING COSTS BASED ON TOTAL AMOUNT

function shipping(val) {
	
	if (val == 0)
		return 0;
	if (val <= 24.99)
		return 6.00;
	if (val <= 140.99)
		return 12.00;
	if (val <= 250.99)
		return 16.00;
	if (val >= 251.99)
		return 25.00;

	return (Math.ceil(val) - 55.00)/10 + 16.00;
}
