function validateForm(formobj)
      { 
        var errormsg="Sorry, the following fields are required\nand must be completed before the form \ncan be submitted.\n"
        var badfields=""
        
        if ((formobj.required)&&(formobj.required.value!=""))
         //if the required field is present
         {
            var requiredArray=formobj.required.value.split(",")
            for (i=0;i<requiredArray.length;i++)
               {
                if ((formobj[requiredArray[i]].type !="select-one") && (formobj[requiredArray[i]].type !="select-multiple") && (formobj[requiredArray[i]].length))
                  {
                   //if a checkbox or radio button set are required, loop through the array for this element, mark them all required.
                   for(j=0;j<formobj[requiredArray[i]].length;j++)
                     {
                       formobj[requiredArray[i]][j].required=true
                     }                   
                   }
                else
                  {
                     formobj[requiredArray[i]].required=true //mark the fields as required
                  }                
               }
         }
       else //if no required fields designated, mark all as being required.
         {
          for (i=0;i<formobj.length;i++)
             {
               formobj.elements[i].required=true //mark all form elements as being required
             }
         }
         
        for (i=0;i<formobj.length;i++)
           { 
             var thisElem=formobj.elements[i]
             if (thisElem.required)
               {
                   if ((thisElem.type=="text")&&(thisElem.value==""))
                      {
                        badfields=badfields +'\n'+ thisElem.name.replace(/_/g," ")
                      }
                   else if ((thisElem.type=="select-one")&&(thisElem.selectedIndex==0))
                      {
                        badfields=badfields + '\n'+ thisElem.name.replace(/_/g," ")
                      }
                   else if ((thisElem.type=="textarea")&&(thisElem.value==''))
                      {
                        badfields=badfields+ '\n'+ thisElem.name.replace(/_/g," ")
                      }
                   else if ((thisElem.type=="radio")||(thisElem.type=="checkbox"))
                     {
                       var notchecked=true
                       var radioName=thisElem.name
                       var radioArray=formobj.elements[radioName]
                       for (j=0;j<radioArray.length;j++,i++)
                         {
                          if (radioArray[j].checked)
                             {
                              notchecked=false
                             }
                         }
                       if (notchecked)
                         {
                         badfields=badfields+ '\n'+ thisElem.name.replace(/_/g," ")
                         }
                       i--
                     }
                 } // end if required
           }//end for        
          
        
        if (badfields !="") //invalid elements found, alert and stop submission
           {
            alert(errormsg + badfields); return false
            }
        else 
        
        {
         //formobj.returnpage.value="http://"+window.location.hostname + "/contact/thankyou.html";
         return true
        
        }
       //else alert('no errors found');return false //this line for testing purposes--alerts there are no errors without submitting form
      }//end function
      
      function arrayFind(arrayobj,value)
        {         
         for(var i=0;i<arrayobj.length;i++)
           {
            if(arrayobj[i]==value) return i              
           }
         return -1
        }