﻿(function($) {
    $.fn.setup_validate = function() {

        return this.each(function() {
            RegisterSubmitButtons();
        });
    };
})(jQuery);

function RegisterSubmitButtons() {
    $("#submit_button").click(function() {
        var flag = true;
        flag = CheckAllRequiredTextBoxes();
        if (!flag) {
            return false;
        }
    });
}

function CheckAllRequiredTextBoxes(flag) {
    var flag = true;
    $(".required_textbox").each(function() {
        var input_box = $(this).find(":first-child");
        var text = input_box.val();
        var validate_flag = true;
        var id = $(this).attr("id");
        if (id === "email") {
            validate_flag = ValidateTextbox("email", input_box);
        }
        else if (id === "number") {
            validate_flag = ValidateTextbox("number", input_box);
        }
        else if (id === "name") {
            validate_flag = ValidateTextbox("name", input_box);
        }
        else {
            validate_flag = ValidateTextbox("length", input_box);
        }
        if (validate_flag) {
            $(this).next().css({ display: "none" });
        }
        else {
            flag = false;
            $(this).next().css({ display: "block" });
        }
    });
    return flag;
}

function ValidateTextbox(textbox_name, control) {
    if (textbox_name === "email") {
        var regex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
        if (regex.test(control.val()))
            return true;
        else
            return false;
    }
    else if (textbox_name === "length") {
        if (control.val().length > 0)
            return true;
        else
            return false;
    }
    else if (textbox_name === "number") {
        var regex = /[a-zA-Z]/;
        if (!regex.test(control.val())) {
            if (control.val().length > 0) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            return false;
        }
    }
    else if (textbox_name === "name") {
        if (control.val().length > 0)
            return true;
        else
            return false;
        }
    else {
        return true;
    }
}
