﻿function ValidateEmpty(element, ok) {
    var failed = element.val() == "";
    return SetValidationClass(element, ok, failed);
}

function ValidateDropDown(element, ok) {
    var failed = element.val() == "0" || element.val() == "";
    return SetValidationClass(element, ok, failed);
}

function SetValidationClass(element, ok, failed) {
    if (failed) {
        element.addClass("input-validation-error");
        return false;
    } else {
        element.removeClass("input-validation-error");
        return ok;
    }
}

function GetText(html) {
    var text;
    if (typeof (html) == "object") {
        text = html.get_data();
    } else {
        text = html;
    }
    return text;
}

function ShowModal(html, callback) {
    CloseModal();
    var text = GetText(html);
    $.modal(text, {
        containerCss: {
            backgroundColor: "#b1b1a1",
            border: "#1c1400 solid 5px",
            color: "#24160f"
        },
        overlayCss: {
            backgroundColor: "Black"
        },
        overlayClose: true,
        onOpen: function(dialog) {
            dialog.overlay.fadeIn(300, function() {
                dialog.data.hide();
                dialog.container.fadeIn(300, function() {
                    dialog.data.slideDown(300, function() {
                        $("#simplemodal-data input:first").focus();
                        if (callback != null) {
                            callback();
                        }
                    });
                });
            });
        }
    });
}

function CloseModal(callback) {
    $.modal.close();
    if (callback != null && typeof (callback) == "function")
        callback();
}

$.fn.SetSelectOptions = function(data) {
    return this.each(function() {
        var list = this;
        $(list).find('option').remove().end();
        $.each(data, function(index, itemData) {
            var option;
            if (itemData.Selected) {
                option = new Option(itemData.Text, itemData.Value, true);
            }
            else {
                option = new Option(itemData.Text, itemData.Value);
            }
            if ($.browser.msie) {
                list.add(option);
            }
            else {
                list.add(option, null);
            }
        });
    });
};

