// Java Document

	function calculate(formObj) {
		var theAmount = 0;
    for (var i = 1; i <= 2; i++) {
       var parsecheck = "" + parseFloat(formObj.elements[i].value);
       if (	parseFloat(formObj.elements[i].value) < 0 ||
			  		parseFloat(formObj.elements[i].value) == 0 || 
						parsecheck == "NaN"	||
						((formObj.elements[i].value)/(formObj.elements[i].value)!=1)&&(formObj.elements[i].value !=0)) 
			 {
          alert("Length, width and depth must be numeric\nand greater than zero, please correct.");
          return false;
       }
    }
    theAmount = (formObj.hight.value * formObj.width.value *
                (formObj.depth.value / GetSelectedButton(formObj.depthMeasure)) / 27.0);

    formObj.areaAnswer.value = formatAnswer(theAmount,4);
		//	if the volumn or unit unit of measure is different than the volumn unit of measure
		//	of the calculation factor then display the calculation factor
		if (formObj.useCalcFactor.value=="1") {
			var theAnswer = theAmount * formObj.theCalcFactor.value;
			formObj.Answer.value = formatAnswer(theAnswer,4);
		}
    return true;	
	}

	function  GetSelectedButton(RadioObj) {
			for (var i=0; i<RadioObj.length; i++) {
				if (RadioObj[i].checked)
					return RadioObj[i].value;
			}
		}

	function passQuantity(formObj) {
		var fieldValue;
		
		if (!calculate(formObj)) return false;

		if (formObj.fuseaction.value=="addToShoppingList")
		{
			var requestedQty = 0;


			if (formObj.useCalcFactor.value=="1")
			{
				if (formObj.Answer.value != "****") {
					requestedQty = formObj.Answer.value;
				}
			} else {
				if (formObj.areaAnswer.value != "****") {
					requestedQty = formObj.areaAnswer.value;
				}
			}			
			
			fieldValue = "index.cfm?fuseaction=addToShoppingList" + 
								"&WebCat=" + formObj.WebCat.value + 
								"&SKU=" + formObj.sku.value + 
								"&prodUom=" + formObj.prodUom.value +
								"&quantity=" + requestedQty; 
								
			opener.window.location.href = fieldValue;
			window.close();
			return;
		}

	
		var theLength =	'opener.document.shoppinglist.' + formObj.selectlist.value + '.length';
		var theValue = 'opener.document.shoppinglist.' + formObj.selectlist.value + '[i].value';
		var theSelected = 'opener.document.shoppinglist.' + formObj.selectlist.value + '[i].selected = "1"';
		// Make sure the volumn price unit of measure is selected on the shopping list
		for (i=0;i<eval(theLength);i++) {
				if (eval(theValue) == formObj.topQtyUom.value)
						eval(theSelected);
		}
		// if the unit or volumn uom is not equal to the volumn uom update the answer
		//  field otherwise update the areaAnswer.
		

		if (formObj.useCalcFactor.value=="1") {
			if (formObj.Answer.value != "****") {
				fieldValue = 'opener.document.shoppinglist.' + formObj.fieldname.value + '.value = formObj.Answer.value';
			}
		}
		else {
			if (formObj.areaAnswer.value != "****") {
				fieldValue = 'opener.document.shoppinglist.' + formObj.fieldname.value + '.value = formObj.areaAnswer.value';
			}
		}
			
		eval(fieldValue);

		window.close();
	}
	
	function closeWindow() {
		window.close();
	}

	function formatAnswer(input, rsize) {
  	var invalid = "**************************";
  	var highVal = "999999999999999999999999";
   	var inString = "" + input;
   	var floatIn = parseFloat(inString);
   	if (inString.indexOf("e") != -1 || floatIn > parseFloat(highVal.substring(0,rsize)+".4"))
      return invalid.substring(0, rsize);
   	if (inString.length <= rsize) return inString;
   	var rounded = "" + (floatIn + (floatIn - parseFloat(inString.substring(0, rsize))));
	   return rounded.substring(0, rsize);
	}

