// products.js - runs the show  var xmlReq = null;  var file = "proc.php";  var text = "";      function gathering(fobj)  {    //this function will gather all the checkbox data and compile it to send    //to the request information form    var stuff = "";    for(var i = 0;i < fobj.elements.length;i++)    {        if(fobj.elements[i].type == "checkbox")        {            if (fobj.elements[i].checked)            {              stuff += fobj.elements[i].name;              stuff += "|";            }        }            }    text += stuff;        requestForm();  }    function requestForm()  {        document.location.href="request.php?text=" + text;     //document.close();  }    function disabler(fobj)  {    for(var i = 0;i < fobj.elements.length;i++)    {        fobj.elements[i].disabled = true;     }  }    function matcher(fobj) //matches QPTs to load cap values  {    for(var i = 0;i < fobj.elements.length;i++)     {         if(fobj.elements[i].type == "select-one")         {               if (fobj.elements[i].name == "filter0") //prod category              {                switch(fobj.elements[i].options[fobj.elements[i].selectedIndex].value)                {                  case "QPT-20":                    fobj.elements[i+1].value = "8 ft-lbs. (1.1 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-LT":                    fobj.elements[i+1].value = "10 ft-lbs. (1.38 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-50":                    fobj.elements[i+1].value = "50 ft-lbs. (7 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-90":                    fobj.elements[i+1].value = "90 ft-lbs. (12 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-130":                      fobj.elements[i+1].value = "130 ft-lbs. (18 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-200":                    fobj.elements[i+1].value = "200 ft-lbs. (27.7 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                  case "QPT-500":                    fobj.elements[i+1].value = "500 ft-lbs. (70 kg-m)";                    fobj.elements[i+1].selected = true;                    break;                }              }                                           if(fobj.elements[i].name == "filter1") //on pt page, load cap              {                switch(fobj.elements[i].options[fobj.elements[i].selectedIndex].value)                {                  case "8 ft-lbs. (1.1 kg-m)":                    fobj.elements[i-1].value = "QPT-20";                    fobj.elements[i-1].selected = true;                    break;                  case "10 ft-lbs. (1.38 kg-m)":                    fobj.elements[i-1].value = "QPT-LT";                    fobj.elements[i-1].selected = true;                    break;                  case "50 ft-lbs. (7 kg-m)":                    fobj.elements[i-1].value = "QPT-50";                    fobj.elements[i-1].selected = true;                    break;                  case "90 ft-lbs. (12 kg-m)":                    fobj.elements[i-1].value = "QPT-90";                    fobj.elements[i-1].selected = true;                    break;                  case "130 ft-lbs. (18 kg-m)":                    fobj.elements[i-1].value = "QPT-130";                    fobj.elements[i-1].selected = true;                     break;                  case "200 ft-lbs. (27.7 kg-m)":                    fobj.elements[i-1].value = "QPT-200";                    fobj.elements[i-1].selected = true;                    break;                  case "500 ft-lbs. (70 kg-m)":                    fobj.elements[i-1].value = "QPT-500";                    fobj.elements[i-1].selected = true;                    break;                }              }                           }//end main if      }//end for  }        function resetme(fobj, line)  {    subinit("initdropdown="+line);  }    function autochecker(fobj, num) //num is the one we want checked  {    var junk=-1;    for(var i = 0;i < fobj.elements.length;i++)    {        if(fobj.elements[i].type == "checkbox")        {          junk++;                    if (num == junk)          {            if (fobj.elements[i].checked == true)            {              fobj.elements[i].checked = false;              sub(fobj);            }            else            {              fobj.elements[i].checked = true;              sub(fobj);            }                    }                  }    }    }    function subinit(postline) //used by the initial links  {     what = postline;     ShowLoadingMessage();     window.setTimeout("getXML(file,what)",1);  }  function sub(f) //special submission function  {     ShowLoadingMessage();     disabler(f);     matcher(f);     str = getFormValues(f,""); //the last blank is a validation thing     window.setTimeout("getXML(file,str)",1);  }    function subpcm(f,num)  {     autochecker(f,num);  }  function getXML(file,str)  {     var xmlhttp=false;    /*@cc_on @*/    /*@if (@_jscript_version >= 5)    // JScript gives us Conditional compilation, we can cope with old IE versions.    // and security blocked creation of the objects.     try {      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");     } catch (e) {      try {       xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");      } catch (E) {       xmlhttp = false;      }     }    @end @*/    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {    	try {    		xmlhttp = new XMLHttpRequest();    	} catch (e) {    		xmlhttp=false;    	}    }    if (!xmlhttp && window.createRequest) {    	try {    		xmlhttp = window.createRequest();    	} catch (e) {    		xmlhttp=false;    	}    }    xmlhttp.open( "POST", file, true );    xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");    xmlhttp.onreadystatechange=function()     {      if(xmlhttp.readyState==4)       {        display(xmlhttp.responseText); //responseText contains the html      }    }    xmlhttp.send(str);  }    function display(html)  {     //html contains html output from processor	   var displayarea = document.getElementById("displayarea");	   displayarea.innerHTML = html;   }  function ShowLoadingMessage()  {           var pleasewait = document.getElementById("pleasewait");    pleasewait.innerHTML = "<b>LOADING...</b>  <img src='ajax-loader.gif'/>";   }    function getFormValues(fobj,valFunc) //form object, validation function  {     var str = "";     var valueArr = null;     var val = "";     var cmd = "";       for(var i = 0;i < fobj.elements.length;i++)     {         switch(fobj.elements[i].type)         {             case "text":                  if(valFunc) // FOR VALIDATION LATER IF NEEDED                  {                      //use single quotes for argument so that the value of                      //fobj.elements[i].value is treated as a string not a literal                      cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";                      val = eval(cmd);                  }                  str += fobj.elements[i].name +                   "=" + encodeURIComponent(fobj.elements[i].value) + "&";                   break;                          case "select-one":                                                     str += fobj.elements[i].name +                  "=" + (fobj.elements[i].options[fobj.elements[i].selectedIndex].value) + "&";                  break;                                case "hidden":                str += fobj.elements[i].name +                   "=" + encodeURIComponent(fobj.elements[i].value) + "&";                   break;            case "checkbox":                 str += fobj.elements[i].name +                   "=" + encodeURIComponent(fobj.elements[i].checked) + "&";                   break;         }     }     str = str.substr(0,(str.length - 1));     return str;  }