﻿// JScript File

function RedBorderIfEmpty(field) {
    try {
        if (field.value.length == 0) {
            field.style.border = "1px solid red";
            return true;
        }
        else {
            field.style.border = "1px solid gray";
            return false;
        }
    }
    catch (ex) {
        logError(ex);
    }
}

// Om <masterField> är ifylld måste även <field> vara ifylld. Annars får <field> röd border.
function RedBorderIfDependentFieldEmpty(field, masterField) {
    try {
        if (field.value.length == 0 && masterField.value.length > 0) {
            field.style.border = "1px solid red";
            return true;
        }
        else {
            field.style.border = "1px solid gray";
            return false;
        }
    }
    catch (ex) {
        logError(ex);
    }
}

function RedBorderIfInvalidEmail(field) {
    try {
        var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

        if (field.value.length == 0 || filter.test(field.value)) {
            field.style.border = "1px solid gray";
            return false;
        }
        else {
            field.style.border = "1px solid red";
            return true;
        }
    }
    catch (ex) {
        logError(ex);
    }
}

function ResetBorder(field) {
    try {
        field.style.border = "1px solid gray";
    }
    catch (ex) {
        logError(ex);
    }
}

function RedBorder(field) {
    try {
        field.style.border = "1px solid red";
    }
    catch (ex) {
        logError(ex);
    }
}


function RedBorderIfNotValidField(regexPattern, field) {
    try {
        var re = new RegExp(regexPattern);
        if (field.value.match(re)) {
            field.style.border = "1px solid gray";
            return true;
        }
        else {
            field.style.border = "1px solid red";
            return false;
        }
    }
    catch (ex) {
        logError(ex);
    }
}

