

function validateForm() {
var ret = true;
for (var i=0; i < document.forms[0].length; i++) 
{
   var element = document.forms[0][i];
   var passrequired = true;
   //checks if the field is required and not empty
   try
   {
       if (element.getAttribute("check") == "yes") {
            if (element.value == "") {
                passrequired = false;
            }
       }
   }
   catch(ex){}
   
   if (passrequired == true)
   {
        //compare fieds validation
        try
        {
            if (element.getAttribute("compareto") != null)
            {
                if ($(eval(element.getAttribute("compareto"))).value == element.value) //matches compare field value?
                {
                    $('#' + element.getAttribute("statuslabel") + "CompareCorrect").css('display', 'block');
                    $('#' + element.getAttribute("statuslabel") + "CompareError").css('display', 'none');
                    $('#' + element.getAttribute("statuslabel") + "Error").css('display', 'none');
                }
                else
                {
                    ret = false;
                    $('#' + element.getAttribute("statuslabel") + "CompareCorrect").css('display', 'none');
                    $('#' + element.getAttribute("statuslabel") + "CompareError").css('display', 'block');
                    $('#' + element.getAttribute("statuslabel") + "Error").css('display', 'none');
                }
            }
            else
            {
                $('#' + element.getAttribute("statuslabel") + "Correct").css('display', 'block');
                $('#' + element.getAttribute("statuslabel") + "Error").css('display', 'none');
            }
        }
        catch (ex) {}
        
        //reg ex validation
        try
        {
            if (element.getAttribute("regex") != null)
            {
                if (checkMatch(element.getAttribute("regex"), element.value) == true) //matches compare field value?
                {
                    $('#' + element.getAttribute("statuslabel") + "RegExCorrect").css('display', 'block');
                    $('#' + element.getAttribute("statuslabel") + "RegExError").css('display', 'none');
                }
                else
                {
                    ret = false;
                    $('#' + element.getAttribute("statuslabel") + "RegExCorrect").css('display', 'none');
                    $('#' + element.getAttribute("statuslabel") + "RegExError").css('display', 'block');
                }
            }
        }
        catch (ex) {}
   }
   else
   {
       try {
           ret = false;
           $('#' + element.getAttribute("statuslabel") + "Correct").css('display', 'none');
           $('#' + element.getAttribute("statuslabel") + "Error").css('display', 'block');
           $('#' + element.getAttribute("statuslabel") + "CompareError").css('display', 'none');
       }
       catch (ex) {}
   }
   

   
 } 
return ret;

}


function checkMatch(re, str) 
{
  if (str.match(re)) 
  {
    return true;
  } 
  else 
  {
    return false;
  }
}



