$(document).ready(function () {
    $(".filterBtn").on("click", function () {
        var num = $(this).attr("contestType");
        $(this).siblings().removeClass("current");
        $(this).addClass("current");
        $("#mobileFilterSelect").children("[value='" + num + "']").siblings().removeAttr("selected");
        $("#mobileFilterSelect").children("[value='" + num + "']").attr('selected', 'selected');
        if ($(".results-tbl[data-contest-type=" + num + "]").length > 0) {
            $("#results-no-contests").html("");
        }
        $(".results-tbl[data-contest-type=" + num + "]").slideDown("slow");
        $(".results-tbl[data-contest-type!=" + num + "]").slideUp("slow", function () {
            if ($(".results-tbl[data-contest-type=" + num + "]").length == 0) {
                if ($('#gpu-results').attr("gpu") == 2) {
                    $("#results-no-contests").html("Please select a county to see local contests.");
                }
                else {
                    $("#results-no-contests").html("No contests to display.");
                }
            }
        });
    });

    $("#resetFilterBtn").on("click", function () {
        $(this).siblings().removeClass("current");
        $(this).addClass("current");
        $("#mobileFilterSelect").children("[value='']").siblings().removeAttr("selected");
        $("#mobileFilterSelect").children("[value='']").attr('selected', 'selected');
        if ($(".results-tbl").length > 0) {
            $("#results-no-contests").html("");
        }
        $(".results-tbl")/*.children(".results-tbl-content")*/.slideDown("slow");
    });

    $("#mobileFilterSelect").on('change', function () {
        var num = $(this).val();
        if (num) {
            //filter
            $(this).children("[value='" + num + "']").siblings().removeAttr("selected");
            $(this).children("[value='" + num + "']").attr('selected', 'selected');
            $('.filterBtn[contestType=' + num + ']').siblings().removeClass("current");
            $('.filterBtn[contestType=' + num + ']').addClass("current");
            if ($(".results-tbl[data-contest-type=" + num + "]").length > 0) {
                $("#results-no-contests").html("");
            }
            $(".results-tbl[data-contest-type=" + num + "]").slideDown("slow");
            $(".results-tbl[data-contest-type!=" + num + "]").slideUp("slow", function () {
                if ($(".results-tbl[data-contest-type=" + num + "]").length == 0) {
                    if ($('#gpu-results').attr("gpu") == 2) {
                        $("#results-no-contests").html("Please select a county to see local contests.");
                    }
                    else {
                        $("#results-no-contests").html("No contests to display.");
                    }
                }
            });
        }
        else {
            //default
            $(this).children("[value='']").siblings().removeAttr("selected");
            $(this).children("[value='']").attr('selected', 'selected');
            $('#resetFilterBtn').siblings().removeClass("current");
            $('#resetFilterBtn').addClass("current");
            if ($(".results-tbl").length > 0) {
                $("#results-no-contests").html("");
            }
            $(".results-tbl").slideDown("slow");
        }
    });
})
var __ButtonActions = new Object;


function RegisterButtonAction(btnid, fn) {
    var actions = __ButtonActions[btnid];
    if (actions == null) {
        actions = new Array();
        __ButtonActions[btnid] = actions;
    }
    actions[actions.length] = fn;
}

function ClearRegisteredButtonActions() {
    __ButtonActions = new Object;
}


function DoButtonAction(btn) {
    var actions = __ButtonActions[btn.id];
    if (actions != null) {
        for (var i = 0; i < actions.length; i++) {
            if (!actions[i](btn))
                return;
        }
    }
}

function setNavBarBtnState(st) {
    nav = $('#headNavbar');
    /*console.log(nav);*/
    nav.attr("pageState", st);
}

function ToggleShowContestCandidates(btn) {
    var table = $(btn).closest($(".divTable"));
    var rows = $(table).find($(".collapsible"));
    /*var button = $(table).find($(".divTableCollapse"));*/
    if ($(rows).css("display") != "none") {
        rows.css("display", "none") //hide
        btn.setAttribute("value", "Show All")
    }
    else {
        rows.css("display", "");
        btn.setAttribute("value", "Show Less")
    }
}

/*change for loop to just rows.css, decide based on state attribute, not display value*/

function ToggleShowAllCandidates(btn) {
    var rows = document.getElementsByClassName("collapsible");
    /*console.log(rows);*/
    if ($(btn).attr("data-displaymode") == "0") {
        $(rows).css("display", "")
        btn.setAttribute("value", "Show Leading Candidates")
        $(btn).attr("data-displaymode", "1")
    }
    else {
        $(rows).css("display", "none") //hide
        btn.setAttribute("value", "Show All Candidates")
        $(btn).attr("data-displaymode", "0")
    }

    //for (var i = 0; i < rows.length; i++) {
    //    if ($(rows[i]).css("display") != "none") {
    //        $(rows[i]).css("display", "none") //hide
    //        btn.setAttribute("value", "Show All Candidates")
    //    }
    //    else {
    //        $(rows[i]).css("display", "");
    //        btn.setAttribute("value", "Show Leading Candidates")
    //    }
    //}
}
