﻿
function validatePage() {
    var validationFailed;
    validationFailed = false;

    $("input[type='text']").each(function(i) {
        if (!validateControl(this)) validationFailed = true;
    });

    if (validationFailed) {
        var $dialog = $("<div></div>")
            .html(language.values.ValidationFailure)
            .dialog({ autoOpen: false, title: language.values.DefaultHeading });
        var okName;

        var buttons = {};
        buttons [language.values.OK] = function() { $(this).dialog("close"); };
        
        $dialog.dialog("option", "buttons", buttons);
        $dialog.dialog("option", "modal", true);
        $dialog.dialog('open');
    }
        
    return !validationFailed;
}

function validateControl(control) {

    var regexPattern;
    regexPattern = $(control).attr("validationRegex");

    var regex;
    regex = new RegExp(regexPattern);

    var controlValue;
    controlValue = $(control).attr('value');

    if (regexPattern == undefined || regex.test(controlValue))  {
        $(control).removeClass("invalid");
        return true;
    }
    else {
        $(control).addClass("invalid");
        return false;
    }
}
