;(function($) {
    $(document).ready(function() {
        var showDebug = false;
        $('.fadeable').hide();

        var lastActiveMiddleClass = '';
        $('.picContainer').hover(function(){
            $(this).find('.fadeable').stop(true, true).fadeIn('slow');
            
            var allClasses = $(this).attr('class');
            var hoverClass = allClasses.replace("picContainer ", "");

            $('#' + hoverClass + 'Pic').css("z-index", "150").stop(true, true).fadeIn('slow');
        },function(){
            $(this).find('.fadeable').stop(true, true).fadeOut('slow');            
            var allClasses = $(this).attr('class');
            var hoverClass = allClasses.replace("picContainer ", "");

            $('#' + hoverClass + 'Pic').css("z-index", "100").stop(true, true).fadeOut('slow');
        });

        
        var disableFade = false;
        $('#pageFooterBar a').click(function(){
            if(!disableFade){
                disableFade = true;
                var oldImage = $('#pageImage img');
                $('#pageImage').prepend('<img src="'+$(this).attr('href')+'" width="617" heigth="401" class="fadeable"/>');
                $('#pageImage .fadeable').delay(300).fadeIn('slow', function(){
                    oldImage.detach();
                    $('#pageImage img').removeClass("fadeable");
                    disableFade = false;
                });
            }
            return false;
        });
        
        
        // Init and Setup of Slider
        var widthOfThumb = 110;
        var amountOfThumbsInViewport = 8;
        
        var galleryItems = $('#pageFooterBar a').length;
        var galleryWidth = galleryItems * widthOfThumb;
        
        var leftLimit = (galleryWidth - (widthOfThumb * amountOfThumbsInViewport)) * -1;
        
        
        if(showDebug) console.debug("Gallery Dimensions: Items:"+galleryItems+" Width:"+galleryWidth+" leftLimit:"+leftLimit);
        var blockClick = false;
        $('#sliderViewport').css("width", galleryWidth);
        
        /**
         *  SlideLeft
         */
        $('#sliderRight').click(function(){
            if(!blockClick){
                
                var lpos = $('#sliderViewport').position();
                var l = lpos.left;
                if(showDebug) console.debug("Slideleft: left:"+l);
                if(l > leftLimit){
                    blockClick = true;
                    if(blockClick){
                        $('#sliderViewport').animate({left: '-=110px'}, 300, function(){
                            blockClick = false;
                        });
                    }
                }else{
                    if(showDebug) console.debug("Cant slide anymore! l:"+l+" leftLimit:"+leftLimit);
                }
            }
        });
        /**
         *  SlideRight
         */
        $('#sliderLeft').click(function(){
            if(!blockClick){
                
                var xpos = $('#sliderViewport').position();
                var p = xpos.left;
                if(p < 0){
                    blockClick = true;
                    if(blockClick){
                        $('#sliderViewport').stop().animate({left: '+=110px'}, 300, function(){
                            blockClick = false;
                        });    
                    }
                    
                }
            }
        });
        

         
         /**
          *  Impressum
          */
         $('#imprintInfo').hide();
         //var imprintActive:Boolean = false;
         
         $('#imprint').click(function(){
             $('#imprintInfo').stop().slideDown();
             //imprintActive = true;
         });
         
         $('#imprintInfo').mouseleave(function(){
             $('#imprintInfo').stop().slideUp();
         });
         
    
   })
})(jQuery);
