<!--
var f,davg,pVol
var dimList = ["w","l","w2","ds","dd"]
var imgList = new Array()

function f_init() {
  var textfields = document.getElementsByTagName('input');
  for (var i=0, count=textfields.length; i<count; i++) {
    if (textfields[i].type == 'text') {
      textfields[i].onkeypress = keyChk
    }
  }
  f = document.forms[0]
  for (i=0;i<dimList.length;i++) {
    obj = eval("f."+dimList[i])
    obj.value = ''
  }
  imgList = document.getElementsByName("shape");
  pv_hide( rVal(f.shp) )
  pvChk()
}

function keyChk(e) {
  if (!e) var e = window.event;
  if (e.keyCode == 13) return false;
}

function dObj(idStr) {
 return document.getElementById(idStr)
}

function ErrorFlag(eObj,err) {
  if (eObj) {
    if (err) {
      if( eObj.className.lastIndexOf('Err')==-1) eObj.className += 'Err'
    }
    else eObj.className = eObj.className.replace(/Err/,"")
  }
}

function iChk(iObj) {
  var emptyOK = !(arguments.length>1 && arguments[1])
  iObj.value = iObj.value.replace(/^\s+|\s+$/g,'')
  var ival = parseFloat(iObj.value)
  var istr = iObj.value.replace(/\.0*$/,"") // if integer, lose .000
  istr = istr.replace(/(\.[1-9]*)0*$/,"$1") // else lose trailing zeroes
  if (iObj.value=='' && emptyOK) {
    ErrorFlag(iObj,false); return 1;
  }
  if (String(ival)==istr && ival > 0) {
    ErrorFlag(iObj,false); return 2;
  } else {
    ErrorFlag(iObj,true); return 0;
  }
}

function pv_rad(rObj) {
  pv_hide(rObj.value)
  dimChk()
}

function rVal(rColl) {
  var sel = -1
  for (i=0; i<rColl.length;i++) {
    if (rColl[i].checked == true) sel = rColl[i].value
  }
  return sel
}

function sVal(selObj) {
  var sel = -1, sOpt = selObj.options
  for (i=0; i<sOpt.length;i++) {
    if (sOpt[i].selected == true) sel = sOpt[i].value
  }
  return sel
}

function pv_hide(objVal) {
  for (i=0;i<imgList.length;i++) imgList[i].className = (objVal==i+1)?"iVis":"iHid";
  dObj("len").className = (objVal==1 || objVal==3)? "opt_hid":"opt"
  if (objVal==1||objVal==3) f.l.value=''; f.w2.value=''
  dObj("w2").className = (objVal==5)? "opt":"opt_hid"
  if (!(objVal==5)) f.w2.value=''
}

function dimChk() {
  var aOK = (iChk(f.w)==2)
  var dOK = (iChk(f.ds)==2 && iChk(f.dd)==2)
  var shape = rVal(f.shp) 
  if (!(shape==1 || shape==3)) aOK &= (iChk(f.l)==2)
  if (shape==5) aOK &= (iChk(f.w2)==2)
  if (aOK) {
    var area = -1, w = Number(f.w.value), l = Number(f.l.value)
    switch(Number(shape)) {
     case 1:
      area = w*w
      break;
     case 2:
      area = w*f.l.value
      break;
     case 3:
      area = Math.PI*w*w/4
      break;
     case 4:
      area = Math.PI*w*l/4
      break;
     case 5:
      area = (w+Number(f.w2.value))*l*0.45
    }
    dObj("pa").innerHTML = Math.round(area*10)/10+" sq ft"
    dObj("gpi").innerHTML = Math.round(area*0.625)
  } else {
    dObj("pa").innerHTML = ''
    dObj("gpi").innerHTML = ''
  }
  if (dOK) {
    davg = (Number(f.ds.value) + Number(f.dd.value))/2
    dObj("pd").innerHTML = Math.round(davg*10)/10+" ft"
  } else dObj("pd").innerHTML = '';
  if (dOK && aOK) {
    pVol = Math.round(area * davg * 7.5)
    dObj("pv").innerHTML = Math.round(pVol)+" gal"
    f.pv2.value = pVol; pvChk()
  } else {
    dObj("pv").innerHTML = ''
  }
}

var defTime = new Array()
defTime[1] = ["8","4","1"]
defTime[2] = ["6","2","0.5"]
defTime[3] = ["6","2","0.5"]
defTime[4] = ["6","",""]
defTime[5] = ["8","4","0.5"]
defTime[6] = ["8","4","0.5"]
defTime[7] = ["8","2","0.5"]
defTime[8] = ["8","2","0.5"]
defTime[9] = ["8","2","0.5"]
defTime[10] = ["8","2",""]
defTime[11] = ["6","2","0.5"]
defTime[12] = ["","",""]

function turnCalc() {
  var pUse = rVal(f.use), pSt = sVal(dObj("state"))
  f.tt.value =  (pUse > 0 && pSt >0)? (defTime[pSt][pUse-1]):""
  ttChk()
}

function pvChk() {
  iChk(f.pv2)
  ttChk(); tempChk();
}

function ttChk() {
  var tGpm = "", tUnits="", ttCk = (iChk(f.tt)==2)
  if ( (iChk(f.pv2, ttCk)==2) && ttCk) {
    tGpm = Math.round(10*f.pv2.value/(f.tt.value*60))/10
    tUnits = " gal/hr"
  }
  dObj("tgpm").innerHTML = tGpm+tUnits
  f.fflow.value = tGpm
  filtChk()
}

function filtChk() {
  var fCk = (iChk(f.fflow)==2)
  var fCons = sVal(dObj("filter"))
  dObj("farea").innerHTML = (fCk && fCons>0)?((Math.round(10*f.fflow.value/fCons)/10)+" sq ft"):""
}

function tempChk() {
  var tCk = (iChk(f.temp)==2)
  dObj("btu").innerHTML = (iChk(f.pv2,tCk)==2 && tCk)?((Math.round(10*f.temp.value*f.pv2.value*8.33)/10)+" BTU"):""
}

function ozToLb() {
  dObj("ozlb").innerHTML = (iChk(f.cOz)==2)?((Math.round(10*f.cOz.value/16)/10)+" lb"):""
}

function ozToGal() {
  dObj("floz").innerHTML = (iChk(f.cFl)==2)?((Math.round(10*f.cFl.value/128)/10)+" gal"):""
}

function ydToFt() {
  dObj("fyd").innerHTML = (iChk(f.cYd)==2)?((Math.round(10*f.cYd.value*3)/10)+" ft"):""
}

function mToFt() {
  dObj("fmtr").innerHTML = (iChk(f.cMt)==2)?((Math.round(10*f.cMt.value*3.28)/10)+" ft"):""
}
//-->
