﻿// when using asp validators
// firefox is working wrong for selecting value from dropdown
// it is need to override ValidatedTextBoxOnKeyPress javascript method
//function ValidatedTextBoxOnKeyPress(event) {
//    if (event.keyCode == 13) {
//        //ValidatorOnChange(event);
//        var vals;
//        if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
//            vals = event.srcElement.Validators;
//        }
//        else {
//            vals = event.target.Validators;
//        }
//        return AllValidatorsValid(vals);
//    }
//    return true;
//}
// discard ValidatorOnChange event
function ValidatorOnChange(event) {
//    if (!event) {
//        event = window.event;
//    }
//    Page_InvalidControlToBeFocused = null;
//    var targetedControl;
//    if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
//        targetedControl = event.srcElement;
//    }
//    else {
//        targetedControl = event.target;
//    }
//    var vals;
//    if (typeof(targetedControl.Validators) != "undefined") {
//        vals = targetedControl.Validators;
//    }
//    else {
//        if (targetedControl.tagName.toLowerCase() == "label") {
//            targetedControl = document.getElementById(targetedControl.htmlFor);
//            vals = targetedControl.Validators;
//        }
//    }
//    var i;
//    for (i = 0; i < vals.length; i++) {
//        ValidatorValidate(vals[i], null, event);
//    }
//    ValidatorUpdateIsValid();
}

function Page_ClientValidate(validationGroup) {
    Page_InvalidControlToBeFocused = null;
    if (typeof(Page_Validators) == "undefined") {
        return true;
    }
    var i;
    $('.form-row').removeClass('invalid');
    $('.form-row span.validator').css('display', 'none');
    for (i = 0; i < Page_Validators.length; i++) {
        ValidatorValidate(Page_Validators[i], validationGroup, null);
        if(!Page_Validators[i].isvalid){
            $(Page_Validators[i]).css('display', 'block');
            Get_Parent(Page_Validators[i]).addClass('invalid');
        }
    }
    ValidatorUpdateIsValid();
    ValidationSummaryOnSubmit(validationGroup);
    Page_BlockSubmit = !Page_IsValid;
    return Page_IsValid;
}

function Get_Parent(val) {
    val = $(val).parent();
    while(val != null){
        if(val.is('.form-row'))
            break;
        val = val.parent();
    }
    return val;
}



