﻿function getHiddenValue( keyName )
{
   var value="";
   try
   {
        var obForm = document.forms[0];
        if( obForm )
            value=obForm.elements[keyName].value;
        else
            value=-1;
   } 
   catch(e)
   {
        if(isdebug)
            alert('error: ' + e.description);
        
        value=-1;
   }
   
   return value;
}

function validateForm(obForm)
{
   var val=false;
   var charcount=0;
   var fieldcount=0;
   var stateIndex;
   var errorMsg = ""; 
   var lastErrorIdx = 0; 
   var ix=0;
   var fieldIndexList = new Array(); 
   var errorFieldColor = "#FFCC99";
   var normalFieldColor = "#B6E096";
   try
   {
       fieldcount=getHiddenValue("FieldCount");
       if(obForm)
       {
            for(var j=0; j< obForm.length; j++)
            {
                switch(obForm[j].type)
                {
                    case 'text': document.getElementById(obForm[j].name).style.backgroundColor = normalFieldColor; if( obForm[j].value.length > 0 && obForm[j].name != "ext" ) charcount++; else { if (obForm[j].name != "ext" )  { errorMsg += 'Please fill in the ' + obForm[j].name + ' field. \n'; lastErrorIdx = j; fieldIndexList[j] = j; }} 
                                         break;
                    case 'select-one':  document.getElementById(obForm[j].name).style.backgroundColor = normalFieldColor; stateIndex=obForm[j].selectedIndex;  if ((stateIndex == -1 || stateIndex == 0 )) {errorMsg += "Please select a state.\n"; document.getElementById(obForm[j].name).style.backgroundColor = errorFieldColor; }
                                            break; 
                }
            }
       }
      /*alert( charcount );
      alert( fieldcount );
      alert( stateIndex );*/
      
      if(charcount < fieldcount || (stateIndex == -1 || stateIndex == 0 ))
      {
        alert( 'Please check your input! \n\n' + errorMsg );
        obForm[lastErrorIdx].focus(); 
        for ( ix in fieldIndexList )                 
            document.getElementById(obForm[ix].name).style.backgroundColor = errorFieldColor;
       }
       else
        val=true; 
   }
   catch(e)
   {
        //alert(e.description);
   } 
   
    return val;
}

