$(document).ready(function () {

    var tallest = 0;
    $("div.homeSectorContent").each(function () {
        if ($(this).height() > tallest) tallest = $(this).height();
    });
    $("div.homeSectorContent").height(tallest);

    $('.homepageSearch input:checkbox').checkbox({ cls: 'homepage-checkbox', empty: '/images/icons/empty.png' });
    $('.level1Search input:checkbox').checkbox({ cls: 'level1-checkbox', empty: '/images/icons/empty.png' });

    $('h3.refineInactive').click(function (event) {
        event.preventDefault();
        $(this).next('.searchFilterContainer').slideToggle("fast");
        $(this).toggleClass("refineActive");
    });

    $('h4.IndustryLevel1,h4.IndustryHomepage').click(function (event) {
        event.preventDefault();
        if ($(this).is(".IndustryHomepage")) {
            $(this).toggleClass("IndustryHomepageSelected");
        }
        else {
            $(this).toggleClass("IndustryLevel1Selected");
        }
        $(this).next('div').slideToggle(200);
    });

    $('h5.SectorLevel1, h5.SectorHomepage').click(function (event) {
        event.preventDefault();
        if ($(this).is(".SectorHomepage")) {
            $(this).toggleClass("SectorHomepageSelected");
        }
        else {
            $(this).toggleClass("SectorLevel1Selected");
        }
        $(this).next('div').slideToggle(200);
    });

    $('.level1SearchHeader a').click(function (event) {
        event.preventDefault();
        $(this).parent().next(".level1SearchContent").slideToggle("fast");
        $(this).parent().toggleClass("level1SearchHeaderActive");
    });

    $('.homepageSearchHeader a').click(function (event) {
        event.preventDefault();
        $(this).parent().next(".homepageSearchContent").slideToggle("fast");
        $(this).parent().toggleClass("homepageSearchHeaderActive");
    });

    function categorySelection() {
        var intTotalSelected = 0;
        var intIndustrySelected = 0;
        $('#categoryContainer').children().each(function () {
            if ($(this).attr('tagName') == 'DIV') {
                var containerDivs = $(this).find("div.categoryCBL");
                containerDivs.each(function () {
                    var checkboxes = $(this).find("INPUT[type='checkbox']");
                    $(checkboxes).each(function () {
                        if ($(this).attr('checked')) {
                            intTotalSelected++;
                            intIndustrySelected++;
                            $(this).next().css({ fontWeight: "bold" });
                        }
                        else {
                            $(this).next().css({ fontWeight: "normal" });
                        }
                    });
                });
                if (intIndustrySelected > 0) {
                    $(this).prev().find("span.industryCount").html(intIndustrySelected + " selected");
                }
                else {
                    $(this).prev().find("span.industryCount").html("");
                }
                intIndustrySelected = 0;
            }
        });

        if (intTotalSelected > 0) {
            $("#categoryCount").html(intTotalSelected + " selected");
        }
        else {
            $("#categoryCount").html("&nbsp;");
        }
    }

    $("#categoryContainer").click(function () {
        categorySelection();
    });

    function filterCounts(section) {
        var intSelected = 0;
        var checkboxes = $(section).find("INPUT[type='checkbox']");
        $(checkboxes).each(function () {
            if ($(this).attr('checked')) {
                $(this).next().css({ fontWeight: "bold" });
                intSelected++;
            }
            else {
                $(this).next().css({ fontWeight: "normal" });
            }
        });
        if (intSelected > 0) {
            $(section).prev().find("span.selectionCount").html(intSelected + " selected");
        }
        else {
            $(section).prev().find("span.selectionCount").html("");
        }
    }

    $(".searchFilterContainer").click(function () {
        filterCounts($(this));
    });

    $(".searchFilterContainer").each(function () {
        filterCounts($(this));
    });

    categorySelection();
    getShortlistCount();
});

//Shortlist
$(document).ready(function () {

    var options = { path: '/' }
    $("#hplShowShorlist").click(function (event) {
        event.preventDefault();
        $("#shortlistContainer").slideToggle("fast", function () {
            if ($("#shortlistContainer").is(":visible")) {
                loadShortlist();
            }
            else {
                $("#shortlistDetails").html('');
            }
        });
    });

    $("a.jb-lnk").click(function (event) {
        event.preventDefault();
        var vId = $(this).attr("rel");
        if ($.cookie("shortlist") != null) {
            var shortlist = $.cookie('shortlist').split("|");
            var alreadySaved = false;
            for (var i = 0; i < shortlist.length; i++) {
                if (shortlist[i].toString() == vId) {
                    alreadySaved = true;
                    break;
                }
            }
            if (alreadySaved) {
                $.cookie('shortlist', $.cookie('shortlist').replace(vId + "|", ""), options);
            }
            else {
                $.cookie('shortlist', $.cookie('shortlist') + vId + "|", options);
            }
        }
        else {
            $.cookie("shortlist", vId + "|", options);
            $.fancybox(
		        '<h2>Your shortlist</h2><img src="/images/shortlist-example.png" width="734" height="119" /><br /><br /><p>Thank you for using the shortlist feature on Season Workers. Your vacancy has now been added to the list which can be accessed at anytime from the top of each page on the site as shown in the example image above.</p>',
		        {
		            'autoDimensions': false,
		            'width': 750,
		            'height': 'auto',
                    'overlayOpacity': 0.6,
                    'overlayColor': '454545'
		        }
	        );

        }
        if (alreadySaved) {
            $(this).html("Add to my shortlist");
        }
        else {
            $(this).html("Remove from my shortlist");
        }

        getShortlistCount();
    });

    $("a.delShortlistVacancy").live('click', function (event) {
        event.preventDefault();
        var vId = $(this).attr("rel");
        if ($.cookie("shortlist") != null) {
            $.cookie('shortlist', $.cookie('shortlist').replace(vId + "|", ""), options);
            loadShortlist();
            getShortlistCount();
        }
    });

});

function getShortlistCount() {
    var shortlistCount = 0;
    if ($.cookie("shortlist") != null) {
        if ($.cookie('shortlist') != "") shortlistCount = $.cookie('shortlist').split("|").length;
    }
    if (shortlistCount > 1) shortlistCount = shortlistCount - 1;
    $("#shortlistCount").html(shortlistCount.toString());
}

function loadShortlist() {
    $("#shortlistLoading").show();
    var shortlist = '';
    if ($.cookie('shortlist') != null) shortlist = $.cookie('shortlist').toString()
    $.ajax({
        type: "POST",
        url: "/webservices/swWebservices.asmx/loadShortlist",
        data: "{Shortlist: '" + shortlist + "'}",
        beforeSend: function (xhr) {
            xhr.setRequestHeader("Content-type", "application/json; charset=utf-8");
        },
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg, status) {
            $("#shortlistDetails").html(msg.d);
            $("#shortlistLoading").hide();
        },
        error: function (xhr, msg, e) {
            $("#shortlistDetails").html("An error occured when loading your shortlist");
            $("#shortlistLoading").hide();
        }
    });
   
}

// SEARCH OPTIONS

$(document).ready(function () {
    $('.searchOptions').hide();
    $("p.linkEverything").click(function () {
        $('.searchOptions').toggle();
    });
    $(".searchOptions h4").click(function () {
        $('.searchOptions').toggle();
    });
});

$(document).ready(function () {
    $(".latestVacancyTabs").tabs({ fxFade: true, fxSpeed: 'fast' });
});

