/// <reference path="/msbuild/jquery-1.5-vsdoc.js" />

/*
*	EMU Australia
*	Author reactive.com
*   Copyright © 2011, emu.com.au
*   All rights reserved.
*/
var $overlay;
var $listing;

emu = {
    init: function () {

        emu.cufon.init();

        //Preload the deliminator
        var delm = new Image();
        $(delm).load().attr('src', '/images/general/subNav-del.gif');

        $(document).ready(function () {
            emu.cufon.ready();
            emu.navigation.init();
            emu.search.init();
            emu.cart.init();
            emu.overlay.init();
            emu.regionSelector.init();
            emu.lookbook.init();
            emu.footerLinks.init();
        });

        window.ie7 = (navigator.appVersion.indexOf("MSIE 7.") == -1) ? false : true;
    },

    cufon: {
        init: function () {

            Cufon.replace('#nav li:not(.on) a', {
                fontFamily: 'EamesExtraBold',
                textShadow: '1px 1px #000',
                color: '#A7A6A5',
                hover: {
                    color: '#fff'
                }
            });

            Cufon.replace('#nav li.on > a', {
                fontFamily: 'EamesExtraBold',
                textShadow: '1px 1px #000',
                color: '#fff'
            });

            Cufon.replace('h1, h2, h3', { fontFamily: 'EamesCenturyModernBlack' });
            Cufon.replace('#cart .title', { fontFamily: 'EamesCenturyModernBlack' });
            Cufon.replace('.featured-links li a span', { fontFamily: 'EamesCenturaryModernMedium' });
            Cufon.replace('#bannerControl > .banner menu li a, #bLanding menu li a', {
                fontFamily: 'EamesCenturyModernBold',
                textShadow: '1px 1px #434343',
                hover: {
                    color: '#ccc'
                }
            });
            Cufon.replace('.location', { fontFamily: 'EamesCenturaryModernMedium' });
            Cufon.refresh('.location', { fontFamily: 'EamesCenturaryModernMedium' });
        },
        ready: function () {
            Cufon.now();
        }
    },


    navigation: {
        init: function () {
            var $nav = $('#nav');
            $('> ul li', $nav).hover(function () {
                $(this).addClass('state-hover');
            });

            $nav.children('ul').delegate('ul', 'mouseleave', function () {
                Cufon.refresh('#nav');
            });
        }
    },

    footerLinks: {
        init: function () {
            $('footer menu.primary li a:not(.nofb), #footerPopUps li a:not(.nofb)').click(function () {
                var url = $(this).attr('href');
                $.fancybox({
                    'href': url,
                    'overlayColor': '#000',
                    'overlayOpacity': 0.7,
                    'padding': 14,
                    'overlayShow': true,
                    'type': 'iframe',
                    'width': 590,
                    'height': 741
                });
                return false;
            });

            $('#footerPopUps li a.nofb').click(function () {
                $.fancybox({
                    'overlayColor': '#000',
                    'overlayOpacity': 0.7,
                    'showCloseButton': true,
                    'padding': 0,
                    'autoScale': false,
                    'transitionIn': 'none',
                    'transitionOut': 'none',
                    'width': 680,
                    'height': 495,
                    'href': this.href.replace(new RegExp("watch\\?v=", "i"), 'v/') + '&rel=0&showsearch=0',
                    'type': 'swf',
                    'swf': {
                        'wmode': 'transparent',
                        'allowfullscreen': 'true'
                    }
                });
                return false;
            });
        }
    },

    bindHTMLclickHandler: function () {

    },

    search: {
        init: function () {
            Cufon.replace('#search .title', { fontFamily: 'EamesCenturyModernBlack' });

            var $search = new Object;
            var $cart = new Object;
            $search.item = $('#search');
            $search.control = $search.item.children('.searchUtility');
            $cart.item = $('#cart');
            $cart.control = $cart.item.children('.cartUtility');

            $search.item.delegate('.btnNavSearch', 'click', function () {
                if ($search.control.is(':hidden')) {
                    $search.control.fadeIn(200);
                    $(this).addClass('state-active');
                } else {
                    $search.control.fadeOut(200);
                    $(this).removeClass('state-active');
                }

                if ($cart.control.is(':hidden')) {
                    $cart.control.fadeOut(200);
                    $cart.item.children('.vewCart').removeClass('state-active');
                } else {
                    $cart.control.fadeOut(100);
                    $cart.item.children('.viewCart').removeClass('state-active');
                }
                return false;
            });

            $search.item.delegate('.btnClose', 'click', function () {
                $search.control.fadeOut(200);
                $search.item.children('.btnNavSearch').removeClass('state-active');
                return false;
            });

            $search.item.delegate('.btnSearch', 'click', function () {
                var keywords = escape($('#keywords').val());
                window.location = "/store/search.html?keyword=" + keywords;
                return false;
            });

            $('html').click(function () {
                if ($search.control.is(':hidden')) {
                    $search.control.fadeOut(200);
                    $search.item.children('.btnNavSearch').removeClass('state-active');
                } else {
                    $search.control.fadeOut(200);
                    $search.item.children('.btnNavSearch').removeClass('state-active');
                }
            });

            $search.item.click(function (e) {
                e.stopPropagation();
            });
        },
        results: {
            init: function () {
                Cufon.replace('.searchResultsTable td a', { fontFamily: 'EamesCenturyModernBold' });

            }
        }
    },

    cart: {
        init: function () {
            var $cart = new Object;
            var $search = new Object;
            $cart.item = $('#cart');
            $cart.control = $cart.item.children('.cartUtility');
            $search.item = $('#search');
            $search.control = $search.item.children('.searchUtility');

            $cart.item.delegate('.viewCart', 'click', function () {
                if ($(this).text() != "Your Cart (0)") {
                    if ($cart.control.is(':hidden')) {

                        $cart.control.fadeIn(200);
                        $(this).addClass('state-active');
                        $(".cart_pop_black_overlay").show();
                    } else {
                        $cart.control.fadeOut(200);
                        $(this).removeClass('state-active');
                        $(".cart_pop_black_overlay").hide();
                    }

                    if ($search.control.is(':hidden')) {
                        $search.control.fadeOut(200);
                        $search.item.children('.btnNavSearch').removeClass('state-active');
                    } else {
                        $search.control.fadeOut(200);
                        $search.item.children('.btnNavSearch').removeClass('state-active');
                    }
                    Cufon.refresh();
                }
                return false;
            });

            $cart.item.delegate('.btnClose', 'click', function () {
                $cart.control.fadeOut(200);
                $cart.item.children('.viewCart').removeClass('state-active');
                $(".cart_pop_black_overlay").hide();
                return false;
            });

            //Click on the body to close the cart
            $('html').click(function () {
                if ($cart.control.is(':hidden')) {
                    $cart.control.fadeOut(200);
                    $(this).addClass('state-active');
                    $(".cart_pop_black_overlay").hide();
                } else {
                    $cart.control.fadeOut(200);
                    $cart.item.children('.viewCart').removeClass('state-active');
                    $(".cart_pop_black_overlay").hide();
                }
            });

            $cart.item.click(function (e) {
                //Stop the event from bubbling
                e.stopPropagation();
            })

            //Call for jsScrollPane
            $('.scroll-pane').jScrollPane({ autoReinitialise: true });

        }
    },

    overlay: {
        init: function () {
            $('body').append('<div id="overlay"/>');
            $overlay = $('#overlay');
        },
        show: function () {
            $overlay.fadeTo(1, 0.7);
        },
        hide: function () {
            $overlay.hide();
        }
    },

    banner: {
        init: function () {
            $(document).ready(function () {
                var $banner = new Object;
                $banner.item = $('#bannerControl');
                $banner.item.addClass('ready');
                $banner.totalItems = $('#bannerControl > .banner').length;

                if ($banner.totalItems > 1) {

                    $('#bannerControl .banner:first').addClass('first');

                    $('#bannerControl .banner:not(:first)').hide();

                    $banner.item.delegate('.btnNext', 'click', function () {

                        if (typeof bannerInterval != undefined) {
                            window.clearInterval(bannerInterval);
                            bannerInterval = window.setInterval("emu.banner.run()", 8000);
                        }

                        emu.banner.animate('next');
                        return false;
                    });

                    $banner.item.delegate('.btnPrevious', 'click', function () {

                        if (typeof bannerInterval != undefined) {
                            window.clearInterval(bannerInterval);
                            bannerInterval = window.setInterval("emu.banner.run()", 8000);
                        }

                        emu.banner.animate(null);
                        return false;
                    });

                    var bannerInterval = window.setInterval("emu.banner.run()", 8000);

                    window.$banner = $banner;  //set

                }
            });
        },
        run: function () {
            window.$banner.item.children('.btnNext').click();
        },
        animate: function (sender) {
            var $banner = window.$banner; //get
            var $bOut;
            var $bIn;

            if (sender == 'next') {

                $bOut = $('#bannerControl .banner:first');
                $bIn = $('#bannerControl .banner:eq(1)');

                $bIn.fadeIn(600);
                $bOut.fadeOut(600, function () {
                    $bOut.detach().appendTo($banner.item);
                });

            } else {

                $bOut = $('#bannerControl .banner:first');
                $bIn = $('#bannerControl .banner:last');


                $bIn.detach().prependTo($banner.item).fadeIn(600);
                $bOut.fadeOut();

            }
        },
        hotspots: {
            init: function () {

                Cufon.replace('#bLanding .hotspot .cs', { fontFamily: 'EamesCenturyModernBold' });

                var $hotspots = new Object();

                $(window).ready(function () {
                    $hotspots.spots = $('#bLanding').children('.hotspot');
                    window.hotspots = $hotspots;

                    emu.banner.hotspots.parse();
                });
            },
            parse: function () {
                var $hotspots = window.hotspots;

                hotspots.spots.each(function () {
                    var obj = $(this);
                    var cs = obj.children('.cs');
                    $.data(obj, "hotspot", { width: cs.width() + 19 });

                    cs.width($.data(obj, "hotspot").width);

                    obj.bind('mouseenter mouseleave', function (e) {
                        if (e.type == 'mouseenter') {

                            obj.children('.rs').children('span').fadeTo(400, 1);
                            obj.children('.cs').stop().animate({ width: $.data(obj, "hotspot").width }, { queue: false, easing: 'easeOutCubic', duration: 400, complete: function () {
                                obj.children('.cs').children('span').fadeIn(200);
                            }
                            });
                        } else {
                            obj.children('.cs').children('span').fadeOut(200, function () {
                                obj.children('.rs').children('span').fadeTo(400, 0.6);
                                obj.children('.cs').stop().animate({ width: 0 }, { queue: false, duration: 200, easing: 'easeOutCubic' });
                            });
                        }
                    });

                    obj.children('.cs').children('span').fadeOut(200, function () {
                        obj.children('.rs').children('span').fadeTo(400, 0.6);
                        obj.children('.cs').stop().animate({ width: 0 }, { queue: false, duration: 200, easing: 'easeOutCubic' });
                    });


                });

            }
        }

    },

    media: {
        init: function () {
            Cufon.replace('.media ul.headingList li', { fontFamily: 'EamesCenturaryModernMedium' });
            Cufon.replace('blockquote', { fontFamily: 'EamesExtraBold' });
            $(document).ready(function () {
                emu.media.parseItems();

                $('#banner').bind('click', function () {
                    var cnt = $(this).siblings('.bannerInfo').html();
                    $.fancybox({
                        content: cnt,
                        'overlayColor': '#000',
                        'overlayOpacity': 0.7,
                        'padding': 17,
                        'overlayShow': true
                    });


                    return false;
                });

            });
        },
        parseItems: function () {
            var media = new Object();
            media.cols = $('#media1, #media2, #media3, #media4, #media5');
            media.data = $('#mediaHolder').children('div');
            var colIndex = 0;
            media.data.each(function (i) {

                var obj = $(this);

                obj.detach().appendTo(media.cols[colIndex]);

                if (obj.hasClass('photo')) {
                    obj.delegate('a', 'click', function () {
                        var cnt = $(this).siblings('div').html();
                        $.fancybox({
                            content: cnt,
                            'overlayColor': '#000',
                            'overlayOpacity': 0.7,
                            'padding': 17,
                            'overlayShow': true
                        });


                        return false;
                    });


                }
                colIndex++;
                if (colIndex > 5) {
                    colIndex = 0;
                }
            });



        }
    },

    regionSelector: {
        init: function () {
            var $selector = new Object;
            $selector.item = $('#regionSelector');
            $selector.target = $selector.item.children('select');
            $selector.selected = $('option:selected', $selector.target);
            $selector.submitBtn = $selector.item.children('input[type="submit"]');
            var lineclass;
            var injHtml = '<ul id="ddlRegions">';
            $selector.target.children('option').each(function () {
                if ($(this).val() == $selector.selected.val()) {
                    lineclass = 'active';
                } else {
                    lineclass = '';
                }
                injHtml += '<li><a href="#" class="' + lineclass + ' ' + $(this).text().replace(/ /g, '').toLocaleLowerCase() + '"><span>' + $(this).val() + '</span>' + $(this).text() + '</a></li>';
            });
            injHtml += "</ul>";
            $selector.target.after(injHtml);
            $selector.drawer = $('#ddlRegions');
            window.$selector = $selector; //Set

            $selector.item.delegate('.trigger', 'click', function () {
                if ($selector.drawer.is(':hidden')) {
                    emu.regionSelector.show();
                } else {
                    emu.regionSelector.hide();
                }
                return false;
            });

            $selector.item.delegate('#ddlRegions', 'mouseenter mouseleave', function (e) {
                if (e.type == 'mouseleave') {
                    window.regiontimer = window.setTimeout("emu.regionSelector.hide()", 900);
                } else {
                    if (typeof window.regiontimer != 'undefined') {
                        window.clearTimeout(window.regiontimer);
                    }
                }
            });

            $selector.item.delegate('#ddlRegions > li a', 'click', function () {
                var newval = $(this).find('span').html();
                if ($selector.selected.val() !== newval) {
                    $selector.target.val(newval);
                    $selector.target.trigger('change');
                    $selector.submitBtn.trigger('click');
                    $('#ddlRegions > li .active').removeClass('active');
                    emu.regionSelector.hide();
                    try {
                        UpdateCurrency(newval);
                    }
                    catch (ex) {
                    };
                }
                return false;
            });
        },
        show: function () {
            window.$selector.drawer.slideDown({ duration: 400, easing: 'easeOutCubic' });
        },
        hide: function () {
            window.$selector.drawer.slideUp({ duration: 400, easing: 'easeOutCubic' });
        }
    },

    popups: {
        init: function () {
            $(document).ready(function () {
                $('body').delegate('a.close-window', 'click', function () {
                    parent.emu.store.fancybox.hide();



                    return false;
                });
            });
        },
        setServiceLinksWithID: function (sender) {
            $(document).ready(function () {
                $("#" + sender).delegate('a', 'click', function () {
                    var source = $(this).attr('href');
                    var width = 620;
                    var height = 450;

                    if ($(this).text() == "shipping") { width = 620; height = 450; }

                    emu.store.fancybox.display(width, height, source, 'iframe');
                    return false;
                });
            });
        }
    },

    store: {


        featureVideos: {

            init: function () {
                $(document).ready(function () {
                    var videos = $('#featureVideos');
                    videos.delegate('a', 'click', function () {
                        // Get the parent element class for the video tag
                        var videoName = $(this).parent("li").attr('class');
                        try {
                            _gaq.push(['_trackEvent', 'Product', 'Videos', videoName]);
                        }
                        catch (ex) {
                            // nothing GA push didn't work (maybe dev)
                        }
                        // For Vimeo
                        $.fancybox({
                            'href': this.href,
                            'overlayColor': '#000',
                            'overlayOpacity': 0.7,
                            'padding': 0,
                            'transitionIn': 'none',
                            'transitionOut': 'none',
                            'overlayShow': true,
                            'type': 'iframe',
                            'width': 680,
                            'height': 495
                        });

                        // For Youtube
                        /* $.fancybox({
                        'overlayColor': '#000',
                        'overlayOpacity': 0.7,
                        'showCloseButton': true,
                        'padding': 0,
                        'autoScale': false,
                        'transitionIn': 'none',
                        'transitionOut': 'none',
                        'width': 680,
                        'height': 495,
                        'href': this.href.replace(new RegExp("watch\\?v=", "i"), 'v/') + '&rel=0&showsearch=0',
                        'type': 'swf',
                        'swf': {
                        'wmode': 'transparent',
                        'allowfullscreen': 'true'
                        }
                        });*/

                        return false;

                    });
                });
            }

        },

        serviceLinks: {

            init: function () {
                $(document).ready(function () {
                    $('#serviceLinks li a').click(function () {

                        emu.store.fancybox.display(620, 450, $(this).attr('href'), 'iframe');
                        return false;

                    });

                });
            }
        },

        reviews: {
            init: function () {
                $(document).ready(function () {
                    emu.store.reviews.parseRater($('#reviews .ddRateSelector'));
                });
            },
            parseRater: function (sender) {
                var selected = sender.find("option[selected]");
                var options = $("option", sender);
                sender.after('<ul id="' + sender.attr('id') + '_replaced' + '" class="ddRatings"></ul>');
                var obj = $('#' + sender.attr('id') + '_replaced');
                var stringBuilder = "";

                options.each(function (i) {
                    var lineclass = "";
                    if ($(this).val() == selected.val()) {
                        lineclass = selected;
                    }

                    if ($(this).val() !== 0) {
                        stringBuilder += '<li class="' + lineclass + '">' + $(this).text() + '<span class="value">' + $(this).val() + '</span></li>';
                    }

                });

                obj.append(stringBuilder);

                obj.delegate('li', 'click mouseover', function (e) {
                    var target = parseInt($('.value', this).html());
                    $('li', obj).each(function () {
                        if (parseInt($('.value', this).html()) <= target) {
                            $(this).addClass('hover');
                            if (e.type == 'click') { $(this).addClass('current'); }
                        } else {
                            $(this).removeClass('hover');
                            if (e.type == 'click') { $(this).removeClass('current'); }
                        }
                    });

                    if (e.type == 'click') {
                        sender.val($('.value', this).html());
                        sender.change();
                        obj.removeClass('active');
                    }
                });

                obj.bind('mouseenter mouseleave', function (e) {
                    if (e.type == 'mouseenter') {
                        $(this).addClass('active');
                    } else {
                        $(this).removeClass('active');
                    }
                });

                sender.hide();
            }
        },
        listing: {
            init: function () {
                Cufon.replace('#listing .productTitle', { fontFamily: 'EamesCenturyModernBold' });

                if (window.ie7) {
                    $(document).ready(function () {
                        $('#listing li').each(function () {
                            $(this).bind('click', function () {
                                window.location = $(this).children('a').attr('href');
                            });
                        });
                    });
                }
            }
        },
        detail: {
            init: function () {
                $(document).ready(function () {
                    emu.store.detail.parseTabs();


                    //Only temp
                    $('#fb-sizing').click(function () {

                        var url = $(this).attr('href');
                        $.fancybox({
                            'href': url,
                            'overlayColor': '#000',
                            'overlayOpacity': 0.7,
                            'padding': 14,
                            'overlayShow': true,
                            'type': 'iframe',
                            'width': 590,
                            'height': 741
                        });

                        return false;
                    });

                });

            },
            parseTabs: function () {
                var $tabsContainer = $('#tabs');
                var $tabLists = $('#tabs ul li');
                var $tabLinks = $('#tabs ul li a');
                var $tabs = $tabsContainer.children('div');

                $tabsContainer.delegate('.tabNavigation a', 'click', function () {
                    $tabs.hide().filter(this.hash).show();
                    $tabLists.removeClass('selected');
                    $(this).parent().addClass('selected');
                    Cufon.refresh($tabLinks);
                    return false;
                });
                $tabLinks.filter(':first').click();

                Cufon.replace($tabLinks, { fontFamily: 'EamesCenturyModernBlack',
                    hover: {
                        color: '#fff'
                    }
                });
            }
        },
        product: {
            carousel: {
                init: function () {

                    Cufon.replace('#carousel .productTitle', { fontFamily: 'EamesCenturyModernBold' });

                    $(document).ready(function () {
                        var $carousel = new Object;
                        $carousel.item = $('#carousel');
                        $carousel.container = $('#CContainer');
                        $carousel.slides = $carousel.item.children('li');
                        if ($carousel.slides.length > 0) {
                            $carousel.slideWidth = $carousel.slides.filter(':first').outerWidth();
                            $carousel.item.width($carousel.slides.length * $carousel.slideWidth);
                            $carousel.slides.filter(':last').detach().prependTo($carousel.item);
                            $carousel.item.css({ marginLeft: ($carousel.slideWidth * -1) });
                        }

                        window.$carousel = $carousel; //Set

                        $carousel.container.delegate('.btnNext', 'click', function () {
                            if (typeof carInterval != undefined) {
                                window.clearInterval(carInterval);
                                carInterval = window.setInterval("emu.store.product.carousel.run();", 12000);
                            }

                            emu.store.product.carousel.animate(-1);
                            return false;
                        });

                        $carousel.container.delegate('.btnPrevious', 'click', function () {
                            if (typeof carInterval != undefined) {
                                window.clearInterval(carInterval);
                                carInterval = window.setInterval("emu.store.product.carousel.run();", 12000);
                            }
                            emu.store.product.carousel.animate(1);
                            return false;
                        });

                        var carInterval = window.setInterval("emu.store.product.carousel.run();", 12000);
                    });
                },
                animate: function (direction) {
                    var $carousel = window.$carousel; //Get

                    if (!$carousel.item.is(':animated')) {
                        $carousel.item.animate({ marginLeft: '+=' + ($carousel.slideWidth * direction) },
                        { easing: 'easeOutCubic', duration: 600, complete: function () {
                            if (direction < 0) {
                                $('#carousel').children('li').filter(':first').detach().appendTo($carousel.item);
                            } else {
                                $('#carousel').children('li').filter(':last').detach().prependTo($carousel.item);

                            }
                            $carousel.item.css({ marginLeft: ($carousel.slideWidth * -1) });
                        }
                        });
                    }
                },
                run: function () {
                    window.$carousel.container.find('.btnNext').click();
                }
            }
        },

        landing: {
            init: function () {

                Cufon.replace('#phLandingProductStrip .productTitle', { fontFamily: 'EamesCenturyModernBold' });
                Cufon.replace('#phLandingProductStrip .categoryLink', { fontFamily: 'EamesCenturyModernBlack', textShadow: '1px 1px #292929' });

                $(document).ready(function () {
                    emu.store.landing.productsParser();
                });
            },

            productsParser: function () {
                var $products = new Object();
                $products.item = $('#phLandingProductStrip');
                $products.items = $products.item.children('div');

                $products.items.filter(':first').addClass('x2p');
            }
        },

        checkout: {
            init: function () {
                Cufon.replace('header .secureTitle, #body .checkoutNav, #cStoreHolder .cStoreFormHeading, #cStoreHolder .heading2, #cStoreHolder .headingCompact span,#cStoreHolder .rShoppingCartItemTitle, #cStoreHolder .heading span', { fontFamily: 'EamesCenturyModernBold' });
                Cufon.replace('#shoppingCart .rShoppingCartItemTitle', { fontFamily: 'EamesCenturyModernBlack' });

                $(document).ready(function () {
                    $("#poplinks").delegate('a', 'click', function () {
                        var source = $(this).attr('href');
                        emu.store.fancybox.display(620, 620, source, 'iframe');
                        return false;

                    });
                });
            },
            shippingDestionationPopUp: {
                priceChanged: function () {

                    $('#popup_shippingChangedWarning, #poup_shippingpolicy').delegate('.btnAgree', 'click', function () {
                        parent.__doPostBack('ddlCountry', '');
                        //emu.store.fancybox.hide();
                        return false;
                    });

                    $('#popup_shippingChangedWarning').delegate('.shipping-policy', 'click', function () {

                        $.fancybox({
                            'href': '#poup_shippingpolicy',
                            'overlayColor': '#000',
                            'overlayOpacity': 0.7,
                            'padding': 14,
                            'overlayShow': true,
                            'type': 'inline',
                            'width': 620,
                            'height': 720,
                            'hideOnOverlayClick': false
                        });

                        //emu.store.fancybox.hide();
                        return false;
                    });

                    //emu.store.fancybox.display(, 233, '#popup_shippingChangedWarning', 'inline');

                    $.fancybox({
                        'href': '#popup_shippingChangedWarning',
                        'overlayColor': '#000',
                        'overlayOpacity': 0.7,
                        'padding': 14,
                        'overlayShow': true,
                        'type': 'inline',
                        'width': 620,
                        'height': 233,
                        'hideOnOverlayClick': false
                    });

                    return false;
                }
            }
        },
        fancybox: {
            display: function (width, height, src, type) {
                /*
                $.fancybox({
                'overlayColor': '#000',
                'overlayOpacity': 0.7,
                'padding': 0,
                'type': type,
                'overlayShow': true,
                'height': height,
                'width': width,
                'href': src
                });
                */

                $.fancybox({
                    'href': src,
                    'overlayColor': '#000',
                    'overlayOpacity': 0.7,
                    'padding': 14,
                    'overlayShow': true,
                    'type': 'iframe',
                    'width': 590,
                    'height': 741
                });


            },
            hide: function () {
                $.fancybox.close();
            }
        }
    },

    lookbook: {
        init: function () {
            emu.lookbook.hotspots.init();

            drawopen = true;
            // Add Slide Numbers
            var pNum = 1;
            $("#slideContainer > li").each(function () {
                $(this).addClass("p" + pNum);
                pNum++;
            });

            // Add thumbnail click events
            $("#lookbookDraw li").each(function () {
                $(this).click(function (e) {
                    emu.lookbook.highlightThumb($(this).index());
                    emu.lookbook.fadeToSlide($(this).index() + 1);
                });
            });

            //open close draw events
            $("#drawButton").click(function () {
                if (drawopen) {
                    emu.lookbook.closeDraw();
                }
                else {
                    emu.lookbook.openDraw();
                }
            });
            emu.lookbook.highlightThumb(0);

            //Lookbok slideshow
            $container = $('#slideContainer')
            $itemsArrayLength = $container.find('> li').length;
            $slideIsAnimated = false;
            $lookbookProducts = $("#lookbookProducts > ul");

            if ($itemsArrayLength > 0) {
                $items = $container.find('> li');
                $single = $items.filter(':first');
                $single.css({ 'z-index': '10' })
                singleWidth = $single.outerWidth();
                currentPage = 1;
                pages = $items.length;

                $('> li.p1', $container).addClass('active').css({ opacity: 1 });
                $('> li', $container).filter(':not(.p1)').css({ opacity: 0 });
                $('> li.p1', $lookbookProducts).addClass('active');

                /***
                var active = $('> li', $lookbookProducts).filter('.active');
                $('> ul > li', active).css({ opacity: 1 });
                var notActive = $('> li', $lookbookProducts).filter(':not(.p1)');
                $('> ul > li', notActive).css({ opacity: 0 });
                ****/

                $('> li .productItems > li', $container).css({ opacity: 0 });
                $('> li.active .productItems > li', $container).css({ opacity: 1 });

                $("#lookbookNav > ul").css({ 'width': pages * 90 });
            }

            $container = $('#slideContainer');
            var current = 1;
            emu.lookbook.addControls();

            $items = $('.slideContainer > li');

            $('.slideNext').bind('click', function (e) {
                e.preventDefault();
                emu.lookbook.fadeNext();
            });
            $('.slideBack').bind('click', function (e) {
                e.preventDefault();
                emu.lookbook.fadePrev();
            });


            // Close drawer after a few seconds
            setTimeout(emu.lookbook.closeDraw, 2000);

        },
        fadeNext: function () {

            page = currentPage + 1;
            var dir = page < currentPage ? 1 : -1;
            var pageInt = (page == 0) ? pages : page;

            pageInt = (pageInt > pages) ? 1 : pageInt;

            emu.lookbook.highlightThumb(pageInt - 1);

            emu.lookbook.updateDraw(pageInt);

            $items = $('#slideContainer > li');
            var first = $items.filter(':first');
            var copied = first.detach();
            copied.appendTo("#slideContainer");

            if ($slideIsAnimated == false) {
                $slideIsAnimated = true;
                var d = 1;

                var active = $(".productItems", $items.filter('.active'));

                $('> li', active).each(function () {
                    $(this).delay(100 * d).animate({ opacity: 0 }, { duration: 100, easing: 'swing', queue: true });
                    d++;
                });

                $items.filter('.active').removeClass('active').delay(500).animate({ opacity: 0 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '0' });
                }
                });
                $items.filter('.p' + pageInt).addClass('active').delay(500).animate({ opacity: 1 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '10' });
                    active = $(".productItems", $items.filter('.active'));
                    d = 1;
                    $('> li', active).each(function () {
                        $(this).delay(100 * d).animate({ opacity: 1 }, { duration: 300, easing: 'swing', queue: true });
                        d++;
                    });
                }
                });
                if (page == 0) {
                    page = pages;
                } else if (page > pages) {
                    page = 1;
                }
                currentPage = page;
                $slideIsAnimated = false;
            }
        },
        fadePrev: function () {
            page = currentPage - 1;
            var dir = page < currentPage ? 1 : -1;
            var pageInt = (page == 0) ? pages : page;
            pageInt = (pageInt > pages) ? 1 : pageInt;

            emu.lookbook.highlightThumb(pageInt - 1);

            emu.lookbook.updateDraw(pageInt);

            $items = $('#slideContainer > li');

            var first = $items.filter(':last');

            var copied = first.detach();
            copied.prependTo("#slideContainer");

            if ($slideIsAnimated == false) {
                $slideIsAnimated = true;
                var d = 5;
                var active = $(".productItems", $items.filter('.active'));
                $('> li', active).each(function () {
                    $(this).delay(100 * d).animate({ opacity: 0 }, { duration: 100, easing: 'swing', queue: true });
                    d--;
                });
                $items.filter('.active').removeClass('active').delay(500).animate({ opacity: 0 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '0' });
                }
                });
                $items.filter('.p' + pageInt).addClass('active').delay(500).animate({ opacity: 1 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '10' });
                    active = $(".productItems", $items.filter('.active'));
                    d = 5;
                    $('> li', active).each(function () {
                        $(this).delay(100 * d).animate({ opacity: 1 }, { duration: 300, easing: 'swing', queue: true });
                        d--;
                    });
                }
                });
                if (page == 0) {
                    page = pages;
                } else if (page > pages) {
                    page = 1;
                }
                currentPage = page;
                $slideIsAnimated = false;
            }
        },
        fadeToSlide: function (slideNumber) {
            page = slideNumber;
            var next = (slideNumber >= currentPage) ? true : false;
            var dir = page < currentPage ? 1 : -1;
            var pageInt = (page == 0) ? pages : page;
            pageInt = (pageInt > pages) ? 1 : pageInt;

            emu.lookbook.updateDraw(pageInt);

            $items = $('#slideContainer > li');

            if ($slideIsAnimated == false) {
                $slideIsAnimated = true;
                var d = 1;
                var active = $(".productItems", $items.filter('.active'));
                $('> li', active).each(function () {
                    $(this).delay(100 * d).animate({ opacity: 0 }, { duration: 100, easing: 'swing', queue: true });
                    d++;
                });

                $items.filter('.active').removeClass('active').delay(500).animate({ opacity: 0 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '0' });
                }
                });
                $items.filter('.p' + pageInt).addClass('active').delay(500).animate({ opacity: 1 }, { duration: 800, easing: 'swing', complete: function () {
                    $(this).css({ 'z-index': '10' });
                    active = $(".productItems", $items.filter('.active'));
                    d = 1;
                    $('> li', active).each(function () {
                        $(this).delay(100 * d).animate({ opacity: 1 }, { duration: 300, easing: 'swing', queue: true });
                        d++;
                    });
                }
                });
                if (page == 0) {
                    page = pages;
                } else if (page > pages) {
                    page = 1;
                }
                currentPage = page;
                $slideIsAnimated = false;
            }
        },
        addControls: function () {
            $('#lookbook').append('<div class="slideShowControls"><a href="#" class="slideBack">&nbsp;</a><a href="#" class="slideNext">&nbsp;</a></div>');
        },

        highlightThumb: function (thumbNumber) {
            $("#lookbookDraw li").each(function () {
                if ($(this).index() == thumbNumber) {
                    $(this).addClass("active");
                } else {
                    $(this).removeClass("active");
                }
            });
        },
        openDraw: function () {
            $("#drawButton span").css({ 'background-position': '0 0' });
            $("#drawButton b").text("Hide");
            drawopen = true;
            $("#lookbookNav").stop().delay(150).animate({ opacity: 1 }, { duration: 250, easing: 'easeOutCubic' });
            $("#lookbookConentHolder").stop().animate({ height: '113px' }, { duration: 400, easing: 'easeOutCubic' });
        },
        closeDraw: function () {
            $("#drawButton span").css({ 'background-position': '0 -9px' });
            $("#drawButton b").text("Show");
            drawopen = false;
            $("#lookbookNav").stop().animate({ opacity: 0 }, { duration: 250, easing: 'easeOutCubic' });
            $("#lookbookConentHolder").stop().delay(150).animate({ height: '0' }, { duration: 400, easing: 'easeOutCubic' });
        },
        updateDraw: function (pg) {
            if (pg > 10) {
                var slideBy = -1 * ((pg - 11) * 83);
                $("#lookbookNav > ul").animate({ "left": slideBy }, { duraton: 100, easing: 'easeOutCubic' });
            } else if (currentPage > 10 && pg == 1) {
                $("#lookbookNav > ul").animate({ "opacity": 0 }, { duraton: 150, easing: 'easeOutCubic', complete: function () {
                    $("#lookbookNav > ul").css({ "left": 0 });
                    $("#lookbookNav > ul").animate({ "opacity": 1 }, { duraton: 150, easing: 'easeOutCubic' });
                }
                });
            }
        },
        hotspots: {
            init: function () {
                $('.hotspot').hover(function (e) {
                    var hsContent = $(this).find('.HSCenter');
                    hsContent.find('a').css({ 'display': 'block', 'opacity': '0' });
                    var w = hsContent.css({ 'width': 'auto' }).width();
                    hsContent.find('a').css({ 'display': 'none', 'opacity': '1' });


                    $(this).data('change', true);

                    hsContent.stop().animate({ 'width': w }, { easing: 'easeOutCubic', duration: 400, complete: function () {
                        hsContent.find('a').stop().fadeIn(200);
                    }
                    });
                }, function () {
                    var hsContent = $(this).find('.HSCenter');

                    hsContent.find('a').stop().fadeOut(200, function () {
                        hsContent.stop().animate({ 'width': '0' }, { easing: 'easeOutCubic', duration: 400, complete: function () {
                            hsContent.css({ 'width': 'auto' });
                        }
                        });
                    });
                });

                $('.hotspot').click(function () {
                    $('html').animate({ scrollTop: $("#lookbookProducts").offset().top }, { duration: 500, easing: "easeOutCubic" });
                });

            }
        }
    }
};
emu.init();


