
function ApOnStaffFilter()
{

}

ApOnStaffFilter.index = "";

ApOnStaffFilter.filter = function(instance, index)
{
    var nameFilter = "";
    if ($("staffFilterByName_" + instance)) {
        nameFilter = $("staffFilterByName_" + instance).value;
    }
    if (typeof index != "undefined") {
        ApOnStaffFilter.index = index;
        nameFilter = "";
        if ($("staffFilterByName_" + instance)) {
            $("staffFilterByName_" + instance).value = "";
        }
    } else if ($("staffFilterByName_" + instance)) {
        ApOnStaffFilter.index = "";
        nameFilter = $("staffFilterByName_" + instance).value;
    }
    var titleFilter = "";
    if ($("staffFilterByTitle_" + instance)) {
        titleFilter = $("staffFilterByTitle_" + instance).options[$("staffFilterByTitle_" + instance).selectedIndex].value;
    }
    var companyFilter = "";
    if ($("staffFilterByCompany_" + instance)) {
        companyFilter = $("staffFilterByCompany_" + instance).options[$("staffFilterByCompany_" + instance).selectedIndex].value;
    }

    var memberList = $("staffList_" + instance);
    var prefix = "staffListMember_"
    for (var i = 0; i < memberList.childNodes.length; i++) {
        var node = memberList.childNodes[i];
        if (node.nodeType == 1) {
            if (node.id.substr(0, prefix.length) == prefix) {
                var hide = false;
                var nodeSuffix = node.id.substr(prefix.length);
                if (ApOnStaffFilter.index != "") {
                    var memberName = $("staffMemberName_" + nodeSuffix).value;
                    if (memberName.substr(0,1).toUpperCase() != ApOnStaffFilter.index) {
                        hide = true;
                    }
                }
                //identify name
                if (nameFilter != "") {
                    var memberName = $("staffMemberName_" + nodeSuffix).value;
                    if (memberName.toLowerCase().indexOf(nameFilter.toLowerCase()) == -1) {
                        hide = true;
                    }
                }
                if (titleFilter != "") {
                    if ($("staffMemberTitle_" + nodeSuffix)) {
                        var memberTitle = $("staffMemberTitle_" + nodeSuffix).value;
                    } else {
                        var memberTitle = "";
                    }
                    if (memberTitle != titleFilter) {
                        hide = true;
                    }
                }
                if (companyFilter) {
                    if ($("staffMemberCompany_" + nodeSuffix)) {
                        var memberCompany = $("staffMemberCompany_" + nodeSuffix).value;
                    } else {
                        var memberCompany = "";
                    }
                    if (companyFilter != memberCompany) {
                        hide = true;
                    }
                }
                node.style.display = hide ? "none" : "block";
                node.hidden = hide;
            }
        }
    }
    //repage
    eval("var pager = staffPager_" + instance);
    pager.init();
}
