$(document).ready(function () {

    // font replacement
    //Cufon.replace("#mainmenu", { fontFamily: "Cicle" });
    //Cufon.replace("#leftmenu li, .title-type2", { fontFamily: "DINbek Medium", hover: true });
    Cufon.replace('#mainmenu a, #leftmenu a, .title-type1 ', { fontFamily: 'DINbek Medium', hover: true });
    Cufon.replace('#topmenu a', { fontFamily: 'DINbek Light', hover: true });

    $('.darkblueTable tr').each(function () {
        $(this).find('td:last').css('border-right', 'none');
    })

    $('#leftmenu li:first').addClass('main');



});
var Bossa = {

    height: null,
    width: null,
    baseHeight: 740,
    baseWidth: 1440,
    generalContainer: "#wrapper",
    animateEffect: "easeInOutBack",

    Event: {
        RESIZE: "resize",
        Mouse: {
            OVER: "mouseover",
            OUT: "mouseout",
            CLICK: "click"
        }
    },

    is: {

        /*
        @return bool
        */
        home: function () {
            return $("html").hasClass("home");
        },

        /*
        @return bool
        */
        subpage: function () {
            return $("html").hasClass("subpage");
        }

    },

    /*
    @return void
    */
    init: function () {
        $(window).bind(Bossa.Event.RESIZE, Bossa.onResize).trigger(Bossa.Event.RESIZE);

        if (Bossa.is.subpage()) {
            $("a").click(function (e) {
                e.preventDefault();

                if ($(this).attr("href") != "#" && $(this).attr("class") != "imgBtn send") {
                    Bossa.Menu.animate(Bossa.Menu.Left, { left: -$(Bossa.Menu.Left.id).width() }, $(this).attr("href"));
                    Bossa.Menu.animate(Bossa.Menu.Top, { top: -$(Bossa.Menu.Top.id).outerHeight() });
                    Bossa.Content.hide();
                }

            });
        }

        Bossa.Language.init();
        $(this.generalContainer).width(Bossa.width);

        if (Bossa.is.home()) {
            Bossa.Menu.Main.init();
            $(this.generalContainer).height(Bossa.height);
        }
        else {
            Bossa.Menu.Left.init();
            Bossa.Menu.Top.init();
            //$(this.generalContainer).height($("body").height());
        }
        Bossa.onResize();

    },

    /*
    @return void
    */
    setElementPosition: function () {

        var height, newHeight, width, newWidth, img, left, newLeft, top, newTop, bottom, right;

        $(".slider-item").css({
            height: Bossa.height,
            width: Bossa.width
        });

        $("#slider").width($(".slider-item").length * Bossa.width);

        $(".item").each(function () {

            img = $(this).find("img");

            height = parseInt(img.height());
            width = parseInt(img.width());
            left = parseInt($(this).css("left"));
            top = parseInt($(this).css("top"));
            right = parseInt($(this).css("right"));
            bottom = parseInt($(this).css("bottom"));

            if (!img.data("data")) {
                img.attr("height", height).attr("width", width);
                img.data("data", {
                    height: height,
                    width: width,
                    left: left,
                    top: top
                });
            }

            newTop = (Bossa.height * img.data("data").top) / Bossa.baseHeight;
            newLeft = (Bossa.width * img.data("data").left) / Bossa.baseWidth;

            newHeight = (Bossa.height * img.data("data").height) / Bossa.baseHeight;
            newWidth = (Bossa.width * img.data("data").width) / Bossa.baseWidth;

            img.not(".notscale").css({
                height: newHeight,
                width: newWidth
            })

        });

    },

    /*
    @return void
    */

    onResize: function () {
        
        Bossa.height = $(window).height();
        Bossa.width = $(window).width();

        if (Bossa.is.home()) {
            $(Bossa.generalContainer).height(Bossa.height);
            $(Bossa.generalContainer).width(Bossa.width);
        }

        Bossa.setElementPosition();
        Bossa.Slider.rePosition();
        
    },

    Content: {

        id: "#content",

        /*
        @return void
        */
        show: function () {
            $(Bossa.Content.id).css("visibility", "visible");
        },

        /*
        @return void
        */
        hide: function () {
            $(Bossa.Content.id).css("visibility", "hidden");
        }

    },

    Copyright: {

        id: "#copyright",

        /*
        @param int sliderStep
        @return void
        */
        isShowHide: function (sliderStep) {
            if (sliderStep > 0) {
                this.hide();
            }
            else {
                this.show();
            }
        },

        /*
        @return void
        */
        show: function () {
            $(Bossa.Copyright.id).show();
        },

        /*
        @return void
        */
        hide: function () {
            $(Bossa.Copyright.id).hide();
        }

    },

    Language: {

        id: "#language",

        /*
        @return void
        */
        init: function () {
            $(Bossa.Language.id).bind({
                mouseover: Bossa.Language.onOver,
                mouseout: Bossa.Language.onOut
            });
        },

        /*
        @return void
        */
        onOver: function () {
            Bossa.Language.animate(0);
        },

        /*
        @return void
        */
        onOut: function () {
            Bossa.Language.animate(-10);
        },

        /*
        @param int paramTop
        @return void
        */
        animate: function (paramTop) {
            $(Bossa.Language.id).stop(true, false).animate({ top: paramTop }, 100);
        }

    },

    Slider: {

        id: "#slider",
        item: ".slider-item",
        leftPosition: 0,
        step: 0,
        navigationPrev: "#navigation .prev",
        navigationNext: "#navigation .next",
        hiddenClass: "none",
        animateEffect: "easeInOutCirc",

        /*
        @return int
        */
        getItemLength: function () {
            return $(Bossa.Slider.id + " , " + Bossa.Slider.item).length;
        },

        /*
        @return void
        */
        prev: function () {
            Bossa.Slider.step--;
            if (Bossa.Slider.step <= 0) {
                Bossa.Slider.step = 0;
                $(Bossa.Slider.navigationPrev).addClass(Bossa.Slider.hiddenClass);
            }
            else {
                $(Bossa.Slider.navigationNext).removeClass(Bossa.Slider.hiddenClass);
            }
            Bossa.Slider.animate(Bossa.Slider.calcLeftPosition());
            Bossa.Copyright.isShowHide(Bossa.Slider.step);
        },

        /*
        @return void
        */
        next: function () {
            Bossa.Slider.step++;
            if (Bossa.Slider.step + 1 >= Bossa.Slider.getItemLength() - 1) {
                Bossa.Slider.step = Bossa.Slider.getItemLength() - 2;
                $(Bossa.Slider.navigationNext).addClass(Bossa.Slider.hiddenClass);
            }
            else {
                $(Bossa.Slider.navigationPrev).removeClass(Bossa.Slider.hiddenClass);
            }
            Bossa.Slider.animate(Bossa.Slider.calcLeftPosition());
            Bossa.Copyright.isShowHide(Bossa.Slider.step);
        },

        /*
        @param int paramLeft
        @return bool
        */
        animate: function (paramLeft) {
            $(Bossa.Slider.id).stop(true, false).animate(
				{
				    left: paramLeft
				},
				{
				    duration: 1500,
				    easing: Bossa.Slider.animateEffect,
				    complete: function () {
				        return true;
				    }
				}
			);
        },

        /*
        @return int
        */
        calcLeftPosition: function () {
            return -(Bossa.Slider.step * Bossa.width);
        },

        /*
        @return void
        */
        rePosition: function () {
            Bossa.Slider.animate(Bossa.Slider.calcLeftPosition());
        }

    },

    Menu: {
        /*
        @param objet menu
        @param object params
        @param string href
        @return bool
        */
        animate: function (menu, params, href) {

            if (href == "#") {
                return;
            }


            $(menu.id).animate(
				params,
				{
				    duration: 1000,
				    easing: Bossa.animateEffect,
				    complete: function () {
				        setTimeout(
							function () {
							    if (href) {
							        location.href = href;
							    }
							    return true;
							},
							100
						);
				    }
				}
			);
        },

        Main: {

            id: "#mainmenu",

            /*
            @return void
            */
            init: function () {
                $(Bossa.Menu.Main.id).find("a").bind(Bossa.Event.Mouse.CLICK, Bossa.Menu.Main.onClick, false);
                Bossa.Menu.animate(Bossa.Menu.Main, { top: -200 });
            },

            /*
            @return void
            */
            onClick: function (e) {
                e.preventDefault();
                Bossa.Menu.animate(Bossa.Menu.Main, { top: -$(Bossa.Menu.Main.id).outerHeight() }, $(this).attr("href"));
                Bossa.Menu.animate(Bossa.Menu.Left, { left: -$(Bossa.Menu.Left.id).width() });
            }

        },

        Top: {

            id: "#topmenu",

            /*
            @return void
            */
            init: function () {
                $(Bossa.Menu.Top.id).find("li a").bind(Bossa.Event.Mouse.CLICK, Bossa.Menu.Top.onClick);
                Bossa.Menu.animate(Bossa.Menu.Top, { top: -90 });
            },

            /*
            @return void
            */
            onClick: function () {
                Bossa.Menu.animate(Bossa.Menu.Top, { top: -$(Bossa.Menu.Top.id).outerHeight() }, $(this).attr("href"));
                Bossa.Menu.animate(Bossa.Menu.Left, { left: -$(Bossa.Menu.Left.id).width() });
            }

        },

        Left: {

            id: "#leftmenu",
            hoverClass: "hover",

            /*
            @return void
            */
            init: function () {
                $(Bossa.Menu.Left.id).find("li").bind({
                    mouseover: Bossa.Menu.Left.onOver,
                    mouseout: Bossa.Menu.Left.onOut,
                    click: Bossa.Menu.Left.onClick
                });
                Bossa.Menu.animate(Bossa.Menu.Left, { left: 17 });
            },

            /*
            @return void
            */
            onClick: function (e) {
                e.preventDefault();
                Bossa.Menu.animate(Bossa.Menu.Left, { left: -$(Bossa.Menu.Left.id).width() }, $(this).find("a").attr("href"));
                if ($(this).find("a").attr("href") != "#") {
                    Bossa.Menu.animate(Bossa.Menu.Top, { top: -$(Bossa.Menu.Top.id).outerHeight() });
                }
            },

            /*
            @return void
            */
            onOver: function () {
                $(this).addClass(Bossa.Menu.Left.hoverClass);
            },

            /*
            @return void
            */
            onOut: function () {
                $(this).removeClass(Bossa.Menu.Left.hoverClass);
            }

        }

    }

}


    

