<!-- Activate Cloaking Device
var descrip = "";

function RoundToCents(amt)
{
   var idx;
   var xxx;
   var i;
   
   xxx = " " + (amt + 0.0059);
   idx = xxx.indexOf(".", 0);
   if (idx == -1)
      xxx = xxx + ".00";
   else
      {
      xxx = xxx.substring(0, idx+3);
      idx = xxx.indexOf(".", 0);
      i = xxx.length - idx - 1;
      if (i < 2)
         for (var x = 0; x < i; x++)
            xxx = xxx + "0";
      }
   return xxx;
}

function CheckNumber(input)
{
   var i, ch, str;
   
   str = input.value;
   
   if (str.length == 0)
      return false;
      
   for (i = 0; i < str.length; i++)
      {
      ch = str.substring(i, i+1);
      if (ch < "0" || "9" < ch)
         return false;
      }
   return true;
}

function CheckQty(qty, desc)
{
   if (!CheckNumber(qty))
      qty.value = 0;
   
   if (eval(qty.value) > 0)
      {
      if (descrip.length > 0)
         descrip += ", ";
      descrip += (desc+" (Qty=" + qty.value + ")");
      }
}

function calculate(form)
{
   var total = 0;
   var tax = 0;
   var ship = 0;
   var st;

   descrip = "";
   CheckQty(form.proscore, "ProScore v4.0");
   CheckQty(form.proschool, "ProSchool v3.0");
   CheckQty(form.combo, "ProScore v4.0 and ProSchool v3.0 Combo");
   CheckQty(form.proscoreupg, "ProScore v4.0 Upgrade");
   CheckQty(form.proschoolupg, "ProSchool v3.0 Upgrade");

   CheckQty(form.package3, "Package #3: Women's Only (Mini-Alpha)");
   CheckQty(form.package4, "Package #4: Men's and Women's (Mini-Alpha)");
   CheckQty(form.nosoft, "Packages without software");

   CheckQty(form.mini, "Mini-Alpha Display");
   CheckQty(form.keypad, "Judge's Entry Keypad");
   CheckQty(form.jbox, "Network Interface - Serial");
   CheckQty(form.jboxusb, "Network Interface - USB");
   CheckQty(form.stand, "Scoreboard Display Stand");
   CheckQty(form.minicase, "Travel/Storage Case (Mini-Alpha)");
   
   form.x_Description.value = descrip;

// total the software
   form.extproscore.value     = RoundToCents(eval(form.proscore.value)     * 350);
   form.extproschool.value    = RoundToCents(eval(form.proschool.value)    * 795);
   form.extcombo.value        = RoundToCents(eval(form.combo.value)        * 1000);
   form.extproscoreupg.value  = RoundToCents(eval(form.proscoreupg.value)  * 99);
   form.extproschoolupg.value = RoundToCents(eval(form.proschoolupg.value) * 249);
   total += eval(form.extproscore.value);
   total += eval(form.extproschool.value);
   total += eval(form.extcombo.value);
   total += eval(form.extproscoreupg.value);
   total += eval(form.extproschoolupg.value);

// total the packages
   form.extpackage3.value = RoundToCents(eval(form.package3.value) * 8243);
   form.extpackage4.value = RoundToCents(eval(form.package4.value) * 10935);
   if (eval(form.package3.value) > 0 || eval(form.package4.value) > 0)
      form.extnosoft.value = RoundToCents(eval(form.nosoft.value) * 280);
   else
      form.extnosoft.value = RoundToCents(eval(form.nosoft.value) * 0);
   total += eval(form.extpackage3.value);
   total += eval(form.extpackage4.value);
   total -= eval(form.extnosoft.value);

// total the components
   form.extmini.value     = RoundToCents(eval(form.mini.value)     * 1550);
   form.extkeypad.value   = RoundToCents(eval(form.keypad.value)   * 339);
   form.extjbox.value     = RoundToCents(eval(form.jbox.value)     * 225);
   form.extjboxusb.value  = RoundToCents(eval(form.jboxusb.value)  * 235);
   form.extstand.value    = RoundToCents(eval(form.stand.value)    * 99);
   form.extminicase.value = RoundToCents(eval(form.minicase.value) * 700);
   total += eval(form.extmini.value);
   total += eval(form.extkeypad.value);
   total += eval(form.extjbox.value);
   total += eval(form.extjboxusb.value);
   total += eval(form.extstand.value);
   total += eval(form.extminicase.value);

   form.subtotal.value = RoundToCents(total);
   
   st = form.x_state.value;
   if (st.toUpperCase() == "CA")
      {
      form.x_tax.value = RoundToCents(total * 0.0875);
      tax = eval(form.x_tax.value);
      }
   else
      form.x_tax.value = RoundToCents(tax);

   if (eval(form.proscore.value) > 0 ||
       eval(form.proschool.value) > 0 ||
       eval(form.combo.value) > 0 ||
       eval(form.proscoreupg.value) > 0 ||
       eval(form.proschoolupg.value) > 0)
      {
      if (form.shipping[1].checked) ship = 20.50;
      if (form.shipping[2].checked) ship = 28.50;
      }
   if (total == 0) ship = 0;
   form.x_freight.value = RoundToCents(ship);
   
   total += (tax + ship);
   form.total.value = RoundToCents(total);
   form.x_Amount.value = RoundToCents(total);
   
   return true;
}
// Deactivate Cloaking -->
