/*
*  wsr-lib.js - WSR effects
*
*  Required plugins:
*  > jquery.hoverIntent.min.js
*
*/


topNavHandler = {

    dropdownClassName: ".wsr-topnav-level2",
    btnArrowOpenedClassName: "wsr-opened",
    dropEnableClassName: ".wsr-dropdown-enable",
    slideSpeed: "fast",

    dropdownSlideDown: function() {
        $(this)
    .addClass(topNavHandler.btnArrowOpenedClassName)
    .children(topNavHandler.dropdownClassName)
    .slideDown(topNavHandler.slideSpeed);
        $("#wsr-goodies-select select").css({ visibility: "hidden" });
    },

    dropdownSlideUp: function() {
        $(this)
    .removeClass(topNavHandler.btnArrowOpenedClassName)
    .children(topNavHandler.dropdownClassName)
    .hide();
        $("#wsr-goodies-select select").css({ visibility: "visible" });
    },

    init: function() {
        $(topNavHandler.dropEnableClassName).hoverIntent({
            sensitivity: 5,
            interval: 100,
            over: topNavHandler.dropdownSlideDown,
            timeout: 200,
            out: topNavHandler.dropdownSlideUp
        });
    }
};

dropListHandler = {

    maxChar: 20,
    listClassName: ".wsr-combobox-list",
    btnClassName: ".wsr-combobox-btn",
    openedClassName: "wsr-opened",

    hideAll: function() {
        $(dropListHandler.listClassName).hide();
        $(dropListHandler.listClassName).removeClass(dropListHandler.openedClassName);
    },

    init: function() {

        $("body").bind('click', function() {
            dropListHandler.hideAll();
        });

        $(dropListHandler.listClassName).click(function(event) {
            event.stopPropagation();
        });

        // Select button action
        $(dropListHandler.btnClassName).click(function(event) {
            //event.stopPropagation();
            var combo_list = $(this).parent().find(dropListHandler.listClassName);
            var openIt = true;

            if (combo_list.hasClass(dropListHandler.openedClassName)) {
                openIt = false;
                combo_list.removeClass(dropListHandler.openedClassName);
            }

            dropListHandler.hideAll();

            if (openIt) {
                combo_list.fadeIn();
                combo_list.addClass(dropListHandler.openedClassName);
            }

            return false;
        });

        // Combobox list item selection
        $(dropListHandler.listClassName + " a").click(function() {
            var parent_line = $(this).parent();
            var parent_list = parent_line.parent();
            var parent_block = parent_list.parent();
            var parent_block_id = parent_block.attr("id");
            var parent_block_b2b = parent_block.attr("B2B");

            var selected_item_val = $(this).text();
            var selected_item_class = $(this).attr("class");
            var new_btn_val = (selected_item_val != "") ? selected_item_val : $(this).attr("title");

            var favoritekey_cookiename = 'WSRFavoriteChampionship';
            var favoritekey_val = (selected_item_val != "") ? selected_item_val : $(this).attr("favoritekey");
            var favoritekey_options = { path: '/', expires: 365 };

            /* Fav championship */
            if (parent_block_id == "wsr-header-fav") {
                /*parent_list.find("li.wsr-selected").removeClass("wsr-selected");
                parent_line.addClass("wsr-selected");*/
                //parent_block.find(dropListHandler.btnClassName).html(new_btn_val.substr(0, dropListHandler.maxChar));


                if ($(this).parent().attr("class") == "wsr-selected") {
                    // remove cookie
                    $.cookie(favoritekey_cookiename, "", favoritekey_options);
                } else {

                    $.cookie(favoritekey_cookiename, favoritekey_val, favoritekey_options);
                }
                window.location.reload();
            }

            // Language management in B2B
            var b2blanguage_cookiename = 'WSRB2BLanguage';
            var b2blanguage_val = $(this).attr("b2blanguageLCID");
            var b2blanguage_options = { path: '/', expires: 365 };

            if (parent_block_b2b == "1") {
                $.cookie(b2blanguage_cookiename, b2blanguage_val, b2blanguage_options);
            }

            /* Lang 
            if(parent_block_id=="wsr-header-lang"){
            parent_block.removeClass();
            parent_block.addClass("wsr-combobox");
            parent_block.addClass(selected_item_class);
            }*/

            /* End selection */
            dropListHandler.hideAll();
        });

    }
};

scheduleHandler = {

    gridWidth: 859,
    gridTopLimit: 38,
    tooltipOffWidth: 292,

    positionTooltip: function(activity) {
        var activityPos = activity.position();
        var activityTop = activityPos.top;
        var activityLeft = activityPos.left;
        var activityWidth = activity.width();
        var activityRefWidth = activityLeft + (activityWidth / 2) + scheduleHandler.tooltipOffWidth;
        var tooltipPosLeft = (activityWidth / 2) - 52;
        var tooltipPosTop = 0;
        var offlimitRight = false;
        var offlimitTop = false;
        var curTooltip = activity.find(".wsr-activity-tooltip");
        var parentPos = curTooltip.parent().parent().position();
        var parentTop = parentPos.top;

        // Analysing position
        if (activityRefWidth > scheduleHandler.gridWidth) {
            offlimitRight = true;
            curTooltip.addClass("wsr-tooltip-rightpos");
            tooltipPosLeft = (activityWidth / 2) - scheduleHandler.tooltipOffWidth;
        }
        /*if (parentTop == scheduleHandler.gridTopLimit) {
        offlimitTop = true;
        curTooltip.addClass("wsr-tooltip-toppos");
        tooltipPosTop = activityTop + 30;
        }*/
        if (offlimitRight && offlimitTop) {
            curTooltip.addClass("wsr-tooltip-corner");
        }

        // Applying new position
        curTooltip.css("left", tooltipPosLeft + "px");

        if (tooltipPosTop != "") {
            curTooltip.css("top", tooltipPosTop + "px");
        }
        curTooltip.show();
    },

    selectItem: function(activity) {
        var inputId = activity.find("input");
        var inputVal = inputId.attr("value");
        var newInputVal = (inputVal == 0) ? 1 : 0;

        // Applying new value
        inputId.attr("value", newInputVal);

        // FP : Added
        var allInputs = $(".wsr-activity-hidden-input");
        var query = "&id="
        var first = true;
        $(".wsr-activity-hidden-input").each(function() {
            if ($(this).attr("value") == 1) {
                if (!first) {
                    query += ",";
                }
                query += $(this).attr("jActivityId");
                first = false;
            }
        });
        var urlPopup = $(".wsr-print-popup").attr("jHref") + "?m=" + $(".wsr-print-popup").attr("jMeeting") + query;
        $(".wsr-print-popup").attr("href", urlPopup);
        // End FP : Added
    },

    hideTooltip: function() {
        $(".wsr-activity-tooltip").hide();
    },

    init: function() {
        // Activity action onClick
        $(".wsr-schedule-activity").click(function() {
            scheduleHandler.hideTooltip();
            scheduleHandler.selectItem($(this));
            $(this).toggleClass("wsr-activity-clicked");
        });

        // Activity action onMouseover
        $(".wsr-schedule-activity").hover(
			function() {
			    scheduleHandler.positionTooltip($(this));
			},
			function() {
			    $(this).children(".wsr-activity-tooltip").hide();
			}
		);
    }
};

$(document).ready(function() {
    // Get rid of the outline style around links
    $('a, button, h3, h4, .wsr-button-submit input').focus(function() { this.blur(); });
});


