﻿function setVisibility() {
}

function setVisibility2() {
    generatedfunctionHideVisibilityFields()
    var contactTypeId = $("#ContactTypeIDFK").val();
    var subjectId = $("#subject_ValueId").val();

    $.each(generatedVisibilityFields, function(fieldId) {
        var contacts = ProcessVisibilityEntries(fieldId, 'contacts');
        var subjects = ProcessVisibilityEntries(fieldId, 'subjects');
        for (i = 0; i < subjects.length; i++) {
            var contact = (contacts[i] != '') ? contacts[i] : '';
            var subject = (subjects[i] != '') ? subjects[i] : '';
            if ((contact != '' && subject != '') && (contactTypeId == contact && subjectId == subject)) // contact & subject gevuld in rules.
            {
                generatedfunctionShowContactSubjectVisibilityFields(contact, subject);
            }
            else if ((contact != '') && (contactTypeId == contact)) // alleen contact gevuld in rules.
            {
                generatedfunctionShowContactVisibilityFields(contact);
            }
            else if ((subject != '') && (subjectId == subject)) // alleen subject gevuld in subject.
            {
                generatedfunctionShowSubjectVisibilityFields(subject);
            }
        }
    });
}

function hideField(id) {
    $('#consuField_' + id + ' :input').attr('disabled', true);
    $('#consuField_' + id).hide();
}
function showField(id) {
    $('#consuField_' + id + ' :input').removeAttr('disabled');
    $('#consuField_' + id).show();
}

function isInvisible(id) {
    return($('#consuField_' + id + ' :input').attr('disabled'));
}

function ProcessVisibilityEntries(id,key) {
    var elem = generatedVisibilityFields[id];
    if (elem) {
        if ((key == 'contacts') && (elem.contacts != undefined)) {
            return elem.contacts;
        }
        if ((key == 'subjects') && (elem.subjects != undefined)) {
            return elem.subjects;
        }
    }
}

