// Make sure all items have an answer.  Need to make unanwered checkboxes,
//	radio buttons and selects return "No Answer"
// Tim Leamy tcleamy@ucdavis.edu
// See http://webtools.ucdavis.edu/dbtool/

function dbtool_verify(f)
{
  var i,k,checked,matched;
  var e,str,en;
  var r=new Array();		// array of radio button groups
  var c=new Array();		// array of names of elements to change 
  var j=0;			//   to No Answer
   
  for (i=0;i<f.length;i++)
  {
    e=f.elements[i];
    if (e.type=="checkbox")
    {
      if (e.checked==false)
      {
        c[j]=e.name;
        j++;
      }
    }
    else if (e.type=="radio") 
    {
      matched=0;
      for (k=0;k<r.length;k++)
      {
        if (r[k].name == e.name)
        {
          matched=1;	// already have entry in array
	  break;
        }
      } 
      if (matched==0)		//create new object in array
      {
        r[k]=new Object();
        r[k].name=e.name;
        r[k].checked=0;
        r[k].fe=i;		// save number of first radio
      }
      if (e.checked==true)
      {
        r[k].checked=1;
      }
    }
    else if ((e.type=="select-one")||(e.type=="select-multiple"))
    {
      if(e.selectedIndex == -1)
      {
        c[j]=e.name;
        j++;
      }
    }
  }

  // check for radio choices not answered
  for (k=0;k<r.length;k++)
  {
    if (r[k].checked==0)
    {
      // * make new hidden element
      e=document.createElement("input");
      e.type="hidden";
      e.value="No Answer"
      e.name=r[k].name;
      f.appendChild(e);
    }
  }
  // change unanswered selects and checkboxes
  for(k=0;k<c.length;k++)
  {
    e=document.createElement("input");
    e.type="hidden";
    e.value="No Answer";
    e.name=c[k];
    f.appendChild(e);
  }
  return(true);
}

