


<!--

var S1_List = 0;
var S2_List = 0;

var countBoolean=true;
var tmpQty="";
var tmpCount=0;
function defineVar(val){
var tmpval="";
tmpCount = tmpCount + 1;
 if(tmpCount == 1){
 tmpval = "dtl_qty" + val;
 for (i = 0; i < document.CALFORM.elements.length; i++){
 if (document.CALFORM.elements[i].value == tmpval){
 tmpQty = document.CALFORM.elements[i+1].value;
 }
 }
 }
}
function setBoolean(){
 countBoolean=false;
}

function deleteQty(val){
var tempval = "";
var tempval2 = 0;
var tempval3 = 0;
var tempval4 = 0;
 if(countBoolean){
 tempval = "dtl_qty" + val;
 for (i = 0; i < document.CALFORM.elements.length; i++){
 if (document.CALFORM.elements[i].value == tempval){
 tempval2 = document.CALFORM.elements[i+1].value;
 tempval3 = tempval2 - 0;
 tempval4 = tempval3 - 1;
 if (tempval4 >=0){
 tempval5 = tempval4 + "";
 document.CALFORM.elements[i+1].value = tempval5;
 document.CALFORM.submit();
 }
 else{
 document.CALFORM.submit();
 }
 }
 }
 }
 if(countBoolean == false){
 document.CALFORM.submit();
 }
}
function deleteLine(val){
var tempval = "";
var tempval2 = 0;
var tempval3 = "";
tempval = "dtl_qty" + val;
 for (i = 0; i < document.CALFORM.elements.length; i++){
 if (document.CALFORM.elements[i].value == tempval){
 tempval2 = 0;
 tempval3 = tempval2 + "";
 document.CALFORM.elements[i+1].value = tempval3;
 document.CALFORM.submit();
 }
 }
}




//Whenever user change ship location or method, the select attribute OnChange calls following fuctions.

function onSelectLocation()
{
  check_shipping();
  document.CALFORM.submit();
}

function onSelectMethod()
{
  check_shipping();
  document.CALFORM.submit();
}
// Added for testing the min-max quantity
function onSelectQuantity()
{
  submit = check_quantity();
  if  (submit == true) {
     document.CALFORM.submit();
  }
}

function getPValArray(tempQuantArray, parseStr){
var j = 1;

   for(i=0; i<document.CALFORM.elements.length; i++){
      if(document.CALFORM.elements[i].value == parseStr+j){
         tempQuantArray[j] = document.CALFORM.elements[++i].value;
         j = j + 1;
      }
   }
}

function check_quantity(){
var quantityArray = new Array();
var verMinArray   = new Array();
var verMaxArray   = new Array();
var verDescArray  = new Array();

var pMinArray     = new Array();
var pMaxArray     = new Array();
var prodArray     = new Array();
var prodNameArray = new Array();
var prodQtyArray  = new Array();

var totalQtyArray = new Array();
var showError = false;
var errorMessage = "";
var n = 0;
var m = 0;
var j = 0;
var regularmessage = "";
var total = 0;

   getPValArray(quantityArray, "dtl_qty");   // holds the quantity per line item.

   getPValArray(verMaxArray, "vmax");        // holds the minimum qty limit at version level.
   getPValArray(verMinArray, "vmin");        // holds the maximum qty limit at version level.
   getPValArray(verDescArray, "vdesc");	   // holds the detail description per version.
   getPValArray(prodQtyArray, "pid");        // holds product id per line item in the order.

   getPValArray(pMinArray, "pmin");          // holds the product min-qty limit for each distinct product.
   getPValArray(pMaxArray, "pmax");          // holds the product max-qty limit for each distinct product.
   getPValArray(prodArray, "grouppid");      // holds the distinct product id in the order.
   getPValArray(prodNameArray, "prodname");  // holds the distinct product name in the order.

   for(m=1; m<prodArray.length; m++){
      total = 0;
      for(n=1; n<prodQtyArray.length; n++) {
         if (prodArray[m] == prodQtyArray[n]){
            if (parseInt(pMinArray[m]) != -1) {
               verMinArray[n]= -1+"";
            }
            total = total + parseInt(quantityArray[n]);
            totalQtyArray[m] = total + "";
         }
      }
   }

   for(n=1; n<quantityArray.length; n++){
      if ((parseInt(quantityArray[n]) > 0) && (parseInt(verMinArray[n]) > 1)) {
         if (parseInt(quantityArray[n]) < parseInt(verMinArray[n])) {
            errorMessage += "The minimum quantity to order "+verDescArray[n]+" is "+verMinArray[n]+"\n";

            showError = true;
         }
      }
      if ((parseInt(verMaxArray[n]) > 0) && (parseInt(quantityArray[n]) != 0)){
         if (parseInt(quantityArray[n]) > parseInt(verMaxArray[n])){
            errorMessage += "The maximum quantity to order "+verDescArray[n]+" is "+verMaxArray[n]+"\n";
            showError = true;
         }
      }
   }
   for(m=1; m<totalQtyArray.length; m++){
      if ((parseInt(pMinArray[m]) != -1) && (parseInt(totalQtyArray[m]) > 0)){
         if (parseInt(totalQtyArray[m]) < parseInt(pMinArray[m])) {
            errorMessage += "The minimum quantity to order "+prodNameArray[m]+" is "+pMinArray[m]+"\n";
	         showError = true;
         }
      }
   }
   if (showError) {
      alert(errorMessage);
      return false;
   }
   return true;
}
// end of selectquantity()

function check_shipping(){

  var pname = ""

//Location Flags
  var us_lower48_flag    = 0;
  var canada_flag        = 0;
  var alaska_flag        = 0;
  var africa_flag	 = 0;
  var australia_flag	 = 0;
  var europe_flag	 = 0;
  var japan_flag	 = 0;
  var s_america_flag	 = 0;
  var mexico_flag	 = 0;
  var mid_east_flag	 = 0;

//Delivery Flags
  var ups_ground_flag    = 0;
  var USPS_Priority_flag = 0;
  var USPS_flag          = 0;
  var purolator_flag     = 0;
  var fedex_flag	 = 0;

  var fedex_index        = -1;
  var fedex_element      = -1;
  var ups_ground_index   = -1;
  var ups_ground_element = -1;
  var purolator_index    = -1;
  var purolator_element  = -1;
  var USPS_index    = -1;
  var USPS_element  = -1;


  check_options(S1_List, S2_List);

  for(i=0; i<document.CALFORM.elements.length; i++){
    if(document.CALFORM.elements[i].name == "p_name"){
      pname = document.CALFORM.elements[i].value;
      if(pname == "S1"){
        if(S1_List == 1){
          for(j=0; j<document.CALFORM.elements[i+1].options.length; j++){
            if(document.CALFORM.elements[i+1].options[j].selected){
              if(document.CALFORM.elements[i+1].options[j].text == "Lower 48 States"){
                us_lower48_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Canada"){
                canada_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Alaska and Hawaii"){
                alaska_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Africa"){
                africa_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Australia and New Zealand"){
                australia_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Europe"){
                europe_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Japan and Asia"){
                japan_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Mexico and Caribbean"){
                mexico_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "South America"){
                s_america_flag = 1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Middle East"){
                mid_east_flag = 1;
              }
            }
          }
        }
      }
      else{
        if(pname == "S2"){
          if(S2_List == 1){
            for(j=0; j<document.CALFORM.elements[i+1].options.length; j++){
              if(document.CALFORM.elements[i+1].options[j].text == "UPS"){
                ups_ground_index = j;
                ups_ground_element = i+1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "FedEx"){
                fedex_index = j;
                fedex_element = i+1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "Purolator"){
                purolator_index = j;
                purolator_element = i+1;
              }
              if(document.CALFORM.elements[i+1].options[j].text == "USPS"){
                USPS_index = j;
                USPS_element = i+1;
              }
              if(document.CALFORM.elements[i+1].options[j].selected){
                if(document.CALFORM.elements[i+1].options[j].text == "UPS"){
                  ups_ground_flag = 1;
                }
                if(document.CALFORM.elements[i+1].options[j].text == "USPS Priority Mail"){
                  USPS_Priority_flag = 1;
                }
                if(document.CALFORM.elements[i+1].options[j].text == "USPS"){
                  USPS_flag = 1;
                }
                if(document.CALFORM.elements[i+1].options[j].text == "Purolator"){
                  purolator_flag = 1;
                }
                if(document.CALFORM.elements[i+1].options[j].text == "FedEx"){
                  fedex_flag = 1;
                }
              }
            }
          }
        }
      }
    }
  }

  if(purolator_flag == 1 && (africa_flag == 1 ||alaska_flag == 1 ||australia_flag == 1 ||europe_flag == 1 ||japan_flag == 1 ||us_lower48_flag == 1 ||s_america_flag == 1 ||mid_east_flag == 1 ||mexico_flag == 1)){
    alert("We're sorry, Purolator will not ship to the location you have selected. \nWe will calculate your charge using FedEx.");
    document.CALFORM.elements[fedex_element].selectedIndex = fedex_index;
    return;
  }
if(ups_ground_flag == 1 && (africa_flag == 1 ||alaska_flag == 1 ||australia_flag == 1 ||canada_flag == 1 ||europe_flag == 1 ||japan_flag == 1 ||s_america_flag == 1 ||mid_east_flag == 1 ||mexico_flag == 1)){
    alert("We're sorry, UPS will not ship to the location you have selected. \nWe will calculate your charge using FedEx.");
    document.CALFORM.elements[fedex_element].selectedIndex = fedex_index;
    return;
  }
if(USPS_flag == 1 && (africa_flag == 1 ||australia_flag == 1 ||canada_flag == 1 ||europe_flag == 1 ||japan_flag == 1 ||s_america_flag == 1 ||mid_east_flag == 1 ||mexico_flag == 1)){
    alert("We're sorry, USPS will not ship to the location you have selected. \nWe will calculate your charge using FedEx.");
    document.CALFORM.elements[fedex_element].selectedIndex = fedex_index;
    return;
  }
}

function check_options(){
  var List_string;
  var S1_flag = 0;
  var S2_flag = 0;
  var S1_key = "onSelectLocation";
  var S2_key = "onSelectMethod";

  for(i=0; i<document.CALFORM.elements.length; ++i){
    if(document.CALFORM.elements[i].name == "p_val"){
      if(document.CALFORM.elements[i].type == "select-one"){
        List_string += document.CALFORM.elements[i].onchange;
        S1_flag = (List_string.indexOf(S1_key));
        S2_flag = (List_string.indexOf(S2_key));
        if(S1_flag != -1){
          S1_List = 1;
        }
        if(S2_flag != -1){
          S2_List = 1;
        }
      }
    }
  }
}

//-->
