var navTimeout, scrollTimeout, loadingTimeout;
var mouseIsUp = true;

jQuery(function($){

    //MSIE 7 FIX
    if ($.browser.msie && $.browser.version <= 7) {
        $newHeight = $('#main-inner').height() + 100;
        $('#shadow-left').css({'padding-bottom':$newHeight,'margin-bottom': $newHeight * -1});
    }

    //LOADING ANIMATION
    loadingTimeout = setInterval(function(){
        dots = $('#loading-dots');
        dotStr = '';
        newLength = (dots.text().length == 3 ? 0 : dots.text().length + 1);
        for (i=0;i<newLength;i++){
            dotStr += '.';
        }
        dots.text(dotStr);
    },800);

    /* START MENU */
    $('#top-menu li.current-menu-item').add($('#top-menu li.current-menu-ancestor')).addClass('original');
    if ($('li.original').length) {
        menuId = $('li.original').attr('id').split('-').pop();
        $('#menu-bottom ul').filter(function(){return $(this).attr('parent') == menuId}).addClass('original-sub').css('display','block');
    }
    
    $('#top-menu li').mouseover(function(event){
        $('#top-menu li').removeClass('current-menu-item').removeClass('current-menu-ancestor');
        window.clearTimeout(navTimeout);
        event.stopPropagation();
        menuId = $(this).attr('id').split('-').pop();

        $('#top-menu li.original').attr('class','original');

        $('#menu-bottom ul').css('display','none');
        $('#menu-bottom ul').filter(function(){return $(this).attr('parent') == menuId}).css('display','block');

    });
    
    $('#top-menu').mouseout(function(event){
        event.stopPropagation();
        navTimeout = window.setTimeout(resetMenu,200);
    });

    
    $('#menu-bottom ul').mouseover(function(event){
        window.clearTimeout(navTimeout);
        event.stopPropagation();
        
        parentId = $(this).attr('parent');

        $('#top-menu li').filter(function(){return $(this).attr('id').split('-').pop() == parentId}).addClass('current-menu-item');
    });

    $('#menu-bottom').mouseout(function(event){
        event.stopPropagation();
        navTimeout = window.setTimeout(resetMenu,200);
    });
    /* END MENU */

    /* START GALLERY */
    if ($('#showcase-nav').length) {
        $('.showcase-full:first').css('display','block');

        $('#showcase-nav .arrow-left').css('opacity',.2);
        if ($('#showcase-scroller').width() < 500) {
            $('#showcase-nav .arrow-right').css('opacity',.2);
        }
        $('#collections-container .arrow-left').css('opacity',.2);
        if ($('#collections-scroller').width() < 380) {
            $('#collections-container .arrow-right').css('opacity',.2);
        }

        var onMouseOutOpacity = 0.67;
        $('a.showcase-thumb').add('a.collection-thumb').opacityrollover({
            mouseOutOpacity:   onMouseOutOpacity,
            mouseOverOpacity:  1.0,
            fadeSpeed:         'fast',
            exemptionSelector: '.selected'
        });

        $('a.showcase-thumb').click(function(event){
            event.stopPropagation();

            var id = $(this).attr('attachment');
            $('.showcase-full').not('[attachment=' + id + ']').each(function(){$(this).hide()});
            $('.showcase-full[attachment=' + id + ']').fadeIn('slow');
            return false;
        })

        //ALL ARROWS
        $('.arrow-left').add('.arrow-right').mouseleave(function(event){
            event.stopPropagation();
            mouseIsUp = true;
        });

        $('.arrow-left').add('.arrow-right').click(function(){
           return false;
        });

        //SHOWCASE ARROWS
        $('#showcase-nav .arrow-left').mouseenter(function(){
           mouseIsUp = false;
           var arrow = $(this);
           var scroller = $('#showcase-scroller');
           scroller.stop(true,true).clearQueue();

           scrollTimeout = setInterval(function(){
               var left = scroller.position().left;
               
               if (left < 24 && mouseIsUp == false && scroller.queue().length == 0) {
                   $('#showcase-nav .arrow-right').css('opacity',1);
                   newLeft = (left+102)+'px';
                   if (parseInt(newLeft) >= 24) arrow.css('opacity',.2);
                   else arrow.css('opacity',1);


                   scroller.animate({'left':'+=102'},400,'linear');
               } else if (mouseIsUp == true) {
                   clearInterval(scrollTimeout);
               }
           },10);

           
           return false;
        });

        $('#showcase-nav .arrow-right').mouseenter(function(){
           mouseIsUp = false;
           var arrow = $(this);
           var scroller = $('#showcase-scroller');
           scroller.stop(true,true).clearQueue();

           scrollTimeout = setInterval(function(){
               var left = scroller.position().left;
               if (left > 500 - $('#showcase-scroller').width() && mouseIsUp == false && scroller.queue().length == 0) {
                   $('#showcase-nav .arrow-left').css('opacity',1);
                   newLeft = (left-126)+'px';
                   if (parseInt(newLeft) <= 500 - $('#showcase-scroller').width()) arrow.css('opacity',.2);
                   else arrow.css('opacity',1);

                   scroller.animate({'left':'-=126'},400,'linear');
               } else if (mouseIsUp == true) {
                   clearInterval(scrollTimeout);
               }
           })
           return false;
        });

        //COLLECTIONS ARROWS
        $('#collections-container .arrow-left').mouseenter(function(){
           mouseIsUp = false;
           var arrow = $(this);
           var scroller = $('#collections-scroller');
           scroller.stop(true,true).clearQueue();

           scrollTimeout = setInterval(function(){
               var left = scroller.position().left;
               if (left < 30 && mouseIsUp == false && scroller.queue().length == 0) {
                   $('#collections-container .arrow-right').css('opacity',1);
                   newLeft = (left+102)+'px';
                   if (parseInt(newLeft) >= 30) arrow.css('opacity',.2);
                   else arrow.css('opacity',1);

                   scroller.animate({'left':'+=102'},400,'linear');
               } else if (mouseIsUp == true) {
                   clearInterval(scrollTimeout);
               }
           },10);
           return false;
        });

        $('#collections-container .arrow-right').mouseenter(function(){
           mouseIsUp = false;
           var arrow = $(this);
           var scroller = $('#collections-scroller');
           scroller.stop(true,true).clearQueue();

           scrollTimeout = setInterval(function(){
               var left = scroller.position().left;
               if (left > 380 - $('#collections-scroller').width() && mouseIsUp == false && scroller.queue().length == 0) {
                   $('#collections-container .arrow-left').css('opacity',1);
                   newLeft = (left-126)+'px';
                   if (parseInt(newLeft) <= 380 - $('#collections-scroller').width()) arrow.css('opacity',.2);
                   else arrow.css('opacity',1);

                   scroller.animate({'left':'-=126'},400,'linear');
               } else if (mouseIsUp == true) {
                   clearInterval(scrollTimeout);
               }
           },10);
           return false;
        });

    }

    //AUTO SCROLL
    var currentSlug = window.location.href.split('/').pop();
    $('#collections-scroller .collection-thumb').each(function(index){
       if ($(this).attr('href').split('/').pop() == currentSlug) {
           $('#collections-scroller').animate({'left':'-='+ 110*index},0,'linear');
           if (index > 0) {
               $('#collections-container .arrow-left').css('opacity',1);
           }
       }
    });

    //POSITION INDIVIDUAL LOGOS
    $('.showcase-full[attachment="478"]').css('padding-top','60px'); //collegiate
    $('.showcase-full[attachment="495"]').css('padding-top','80px'); //i do
    $('.showcase-full[attachment="473"]').css('padding-top','70px'); //sarah's hope
    $('.showcase-full[attachment="199"]').css('padding-top','80px'); //imperial
    $('.showcase-full[attachment="493"]').css('padding-top','50px'); //studio petra azar

    /* END GALLERY */

    $('body').show();
});

jQuery(window).load(function() {
    jQuery('#showcase-loading').hide();
    clearTimeout(loadingTimeout);
});

function updateStoreHistory(iframe){
    var url=iframe.attr('src').split('/').pop();
    window.location.hash = url;
}

function resetMenu() {
    jQuery('#top-menu li').removeClass('current-menu-item');
    jQuery('#top-menu li.original').addClass('current-menu-item');
    jQuery('#menu-bottom ul').css('display','none');
    jQuery('#menu-bottom ul.original-sub').css('display','block');
}
