﻿var toolbarElement = "#ctl00_toolbar";
var toolbarIsVisible = false;
var overlayShown = "";
var disableExpandingTopmenu = false;
var overlayToShow = "info";


function showOverlay(layerName,animate) {

    var oldLayer = overlayShown;
    animate = (typeof (animate) != 'undefined') ? animate : true;

    if ((overlayShown != "")) {
        hideOverlay(oldLayer, (layerName == "gallery") || (layerName == overlayShown));
    }
    
    
    if (oldLayer != layerName) {

        if (animate) {
            YUI({ combine: true, timeout: 10000 }).use("anim", function(Y) {

                if (layerName == "gallery") {                   
                    var obj = swfobject.getObjectById("flGallery");
                    if (obj && typeof obj.fadeIn != "undefined") {
                        //alert(typeof obj.fadeIn);
                        obj.fadeIn(true);
                    }
                } else {
                    showOverlayContainer();
                    var animShow = new Y.Anim({
                        node: '.' + layerName + '-overlay',
                        to: { left: 0 },
                        easing: Y.Easing.easeOutStrong,
                        duration: 0.5
                    });
                    animShow.run();
                }

                overlayShown = layerName;

                YUI().use('node', function(Y) {
                    var node = Y.one(".fm-" + layerName);                    
                    if (node) {
                        node.addClass('active');
                    }
                });
            });
        }

        else {
            YUI().use('node', function(Y) {
                var node = Y.one("." + layerName + "-overlay");
                node.setStyle("left", "0px");

                node = Y.one(".fm-" + layerName);
                if (node) {
                    node.addClass('active');
                }

                overlayShown = layerName;
            });
        }
        
    }
}


function hideIcon() {
    YUI().use('node', function(Y) {
        var node = Y.one(".fm-gallery");
        if (node) {
            node.removeClass('active');
        }
    });
}


function showGalleryOverlay() {    
    if ((overlayShown != "")) {
        hideOverlay(overlayShown,true);
    }

    var obj = swfobject.getObjectById("flGallery");
    if (obj && typeof obj.fadeIn != "undefined") {
        //alert(typeof obj.fadeIn);
        obj.fadeIn(true);
    }
}

function hideOverlayContainer() {
    document.getElementById("overlay").style.width = "1px";
}

function showOverlayContainer() {
    document.getElementById("overlay").style.width = "500px";
}

function hideOverlay(layerName, hideContainer) {

    //alert(layerName + " /" + hideContainer);

    YUI({ combine: true, timeout: 10000 }).use("anim", function(Y) {

        if (layerName == "gallery") {
            hideOverlayContainer();
            var obj = swfobject.getObjectById("flGallery");
            if (obj && typeof obj.fadeIn != "undefined") {
                //alert(typeof obj.fadeIn);
                obj.fadeIn(false);
            }
        } else {
            var animShow = new Y.Anim({
                node: '.' + layerName + '-overlay',
                to: { left: -405 },
                easing: Y.Easing.easeOutStrong,
                duration: 0.5
            });
            if (hideContainer) {
                animShow.on("end", hideOverlayContainer);
            }
            animShow.run();
        }


        overlayShown = "";

        YUI().use('node', function(Y) {
            var node = Y.one(".fm-" + layerName);
            if (node) {
                node.removeClass('active');
            }
        });

    });
}




YUI().use('node-base', function (Y) {
    function init() {
        // Fired on DOM ready event

        YUI({ combine: true, timeout: 10000 }).use("anim", function (Y) {
            var animShow = new Y.Anim({
                node: toolbarElement,
                to: { height: expandingHeight },
                easing: Y.Easing.easeOutStrong,
                duration: 0.5
            });

            var animHide = new Y.Anim({
                node: toolbarElement,
                to: { height: 38 },
                easing: Y.Easing.easeOutStrong,
                duration: 0.3
            });

            var showToolBar = function (e) {
                if (!toolbarIsVisible) {
                    toolbarIsVisible = true;
                    e.preventDefault();
                    animShow.run();
                } else {
                    hideToolBar(e);
                }
            };

            var hideToolBar = function (e) {
                if (toolbarIsVisible) {
                    toolbarIsVisible = false;
                    e.preventDefault();
                    animHide.run();
                }
            };

            if (!disableExpandingTopmenu) {
                Y.get('.siteChooser').on('click', showToolBar);
                Y.get('.background').on('mouseover', hideToolBar);
                Y.get('#mainContent').on('mouseover', hideToolBar);
            }
        });


        if (Y.get('#floatmenu')) {
            var links = document.getElementById('floatmenu').getElementsByTagName('a');
            for (var i = 0; i < links.length; i++) {
                links[i].onmousedown = function () {
                    this.blur();
                    return false;
                }
                links[i].onclick = function () {
                    this.blur();
                }
                if (/msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent)) {
                    links[i].onfocus = function () {
                        this.blur();
                    }
                }
            }

            if (autoShowLayer) {
                showOverlay(overlayToShow);
            }
        }

    } // init


    Y.on("domready", init);
});

