﻿// JScript File

function onInputChange(formField){

        // Do nothing if client validation is not active
       if (typeof(Page_Validators) == "undefined")  return;
       
       //run through validators
       isValid = true;
       foundValidatorForFormField = false;
       for(i=0; i < Page_Validators.length; i++)
       {            
            //if the validator is concerned with our changed control...
            if(Page_Validators[i].controltovalidate == formField.id){
                foundValidatorForFormField = true;
                ValidatorValidate(Page_Validators[i]);
                //check if it's valid and update isValid if it's not.
                if(!Page_Validators[i].isvalid){
                    isValid = false;
                    break;//we found an invalid validator. Stop here.
                }
            }
       }
       
       if(foundValidatorForFormField){
           //we found a validator. 
                      
           //set the selector for the jQuery Css change
           var labelSelectorString = "label[for='" + formField.id + "']";
           
           if(!isValid){
                $(formField).addClass("error");
                $(labelSelectorString).addClass("error");
           }else{
                $(formField).removeClass("error");
                $(labelSelectorString).removeClass("error");
           }
       }
    }
    
    function PageIsValid(){
        var pageIsValid = true;
        
        for(i=0; i < Page_Validators.length; i++)
        {            
            if(!Page_Validators[i].isvalid){
                pageIsValid = false;
                break;//we found an invalid validator. Stop here.
            }
        }
        
        return pageIsValid;
    }
        
    function CheckAllFormElements(){
        //
        //when button is clicked, run each form input element through the OnChange styling method
        $("input").each(
            function(index){
                onInputChange($(this).get(0));
            }
        );
        $("select").each(
            function(index){
                onInputChange($(this).get(0));
            }
        );
        $("textarea").each(
            function(index){
                onInputChange($(this).get(0));
            }
        );
        //alert(Page_IsValid);//returns true even when all validators have been validated and are false...
        if(PageIsValid()){
            $("p.alert").addClass("hide");
        }else{
            $("p.alert").removeClass("hide");
        }
    }
