﻿function ReplaceCharacters(str) {
    str = str.replace("-", "");
    str = str.replace("-", "");
    str = str.replace("-", "");
    str = str.replace("-", "");
    str = str.replace(" ", "");
    str = str.replace(" ", "");
    str = str.replace(" ", "");
    str = str.replace(",", "");
    str = str.replace(",", "");
    str = str.replace(",", "");
    str = str.replace(".", "");
    str = str.replace(".", "");
    str = str.replace(".", "");
    return str;
}
function GetRegExp(type, control) {

    switch (type) {
        case 1: //sträng
            {
                return regExp = /^.+$/;
            }
        case 2: // heltal
            {
                return regExp = /^[0-9]+$/;
            }

        case 3: // decimal
            {
                return regExp = /^[0-9\,\.]+$/;
            }
        case 4: // datum
            {
                return regExp = /^[12]{1}[09]{1}[0-9]{2}[-]{1}[01]{1}[0-9]{1}[-]{1}[0123]{1}[0-9]{1}$/;
            }
        case 5: // email
            {
                return regExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
            }
        case 6: // personnummer
            {
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    $(control).val(ReplaceCharacters(str))
                }
                return regExp = /^(?:19|20)?\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])?\d{4}$/;
            }
        case 12: // URL
            {
                return regExp = /^(([\w]+:)?\/\/)?(([\d\wåäö]|%[\w\d]{2,2})+(:([\d\wåäö]|%[\w\d]{2,2})+)?@)?([\d\wåäö][-\d\wåäö\.]{0,253}[\d\wåäö]\.)+[\wåäö]{2,4}(:[\d]+)?(\/([-+_~.\d\wåäö]|%[\w\d]{2,2})*)*(\?(&?([-+_~.\d\wåäö]|%[\wåäö\d]{2,2})=?)*)?(#([-+_~.\d\wåäö]|%[\w\d]{2,2})*)?$/;
            }
        case 13: // PostNr tillåter 123456789 och mellanslag, 6 tecken om ett mellanslag annars 5 tecken
            {
                var regExp = /^.+$/;
                var regExp = /^[0-9]+$/;
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    $(control).val(ReplaceCharacters(str))
                }
            }
        case 9: //Telefonnummer tillåter "() - 0123456789"
            {
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    $(control).val(ReplaceCharacters(str));
                }
                return regExp = /^[0-9-()]+$/;
            }
        case 10: // Ingen
            {
                return regExp = "";
            }
        case 11: // Tid
            {
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    str = new String(ReplaceCharacters(str));

                    if (str.length == 4) {
                        var start = str.substring(0, 2);
                        var end = str.substring(2, 4);
                        str = start + ":" + end;
                    }

                    $(control).val(ReplaceCharacters(str));
                }

                return regExp = /^(20|21|22|23|[01]\d|\d)(([:][0-5]\d){1,2})$/;
            }
        case 14: // Födelseår
            {
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    $(control).val(ReplaceCharacters(str));
                }
                return regExp =  /^(?:19|20)?\d{2}(((?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01]))([-]?\d{4})?)?$/;
            }
        case 15: // Födelsedatum
            {
                if ($(control).val() != null) {
                    var str = new String($(control).val());
                    $(control).val(ReplaceCharacters(str));
                }
                return regExp = /^(?:19|20)?\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])([-]?\d{4})?$/;
            }
    }
}
function SedabValidate(control, validateType) {
    var regexp = GetRegExp(validateType, control);
    var f = control.form;
    var button = $(f).find("input[type='submit']");
    if (button == null)
        var button = $(f).find("input[type='button']");
    var errors = false;
    if (!$(control).val().match(regexp)) {

        if ($(control).val() == "" && !$(control).hasClass("required")) {
            $("label[for='" + control.id + "'] span").remove();
            $("label[for='" + control.id + "']").css("color", $("body").css("color"));
            $(control).css("backgroundColor", "#ffffff");
        }

        else {
            $("label[for='" + control.id + "'] span").remove();
            $("label[for='" + control.id + "']").append("<span> är inte korrekt inmatat! </span>");
            $("label[for='" + control.id + "']").css("color", "red");
            $(control).css("backgroundColor", "#ffa4a4");
        }

    }
    else {
        $("label[for='" + control.id + "'] span:first").remove();
        $("label[for='" + control.id + "']").css("color", $("body").css("color"));
        $(control).css("backgroundColor", "#adffa0");
    }
    $(f).find("input").each(function () {
        if ($(this).hasClass("required") && $(this).val() == "")
            errors = true;
        if ($(this).css("backgroundColor") == "#ffa4a4" || $(this).css("backgroundColor") == "rgb(255, 164, 164)")
            errors = true;
    });
    $(f).find("select").each(function () {
        if ($(this).hasClass("required") && $(this).val() == "")
            errors = true;
        if ($(this).css("backgroundColor") == "#ffa4a4" || $(this).css("backgroundColor") == "rgb(255, 164, 164)")
            errors = true;
    });
    $(f).find("textarea").each(function () {
        if ($(this).hasClass("required") && $(this).val() == "")
            errors = true;
        if ($(this).css("backgroundColor") == "#ffa4a4")
            errors = true;
    });
    $(button).attr("disabled", errors);

}
function CheckMedlemBokning() {
    var disabled = true;


    var user = document.getElementById("MedlNr_medlem").value;
    var password = document.getElementById("PostNr_medlem").value;

    if (password != "" && user != "") {
        disabled = false;
    }

    $("#submitButtonMedlem").attr("disabled", disabled);
}
