$( document ).ready( function() {
		var fancyboxOptions = { 'overlayShow': true };
                        
        if ($.browser.msie && $.browser.version == 6.0) {
            fancyboxOptions = { 'overlayShow': true, 'zoomSpeedIn': 0, 'zoomSpeedOut': 0 }
        }
                        
        var colorList = Array( "white", "gray", "black" );
		var defaultColor = colorList[ 0 ];
		var currColor = getCookie( "contentColor" );
		
		if( !currColor )
			currColor = defaultColor;
		
		$( "#image-holder a" ).remove();
		
		var whichPic = 0;
		
		$( ".gallery li a" ).each( function() {
			$( this ).hide().addClass( "pic" + whichPic );
			whichPic++;
		} );
		
		var enlargeLink = $( "<a></a>" ).attr( "id", "enlarge" ).css( "display", "none" ).html( "Enlarge" );
		
		$( ".gallery ul" ).after( enlargeLink );
		
		var isLoaded = false;
		
		var preloader = new Image();
		
		preloader.onload = function() {
            if( !isLoaded ) {
                isLoaded = true;
                
                var currNum = -1;
				var lastNum = -1;
					
				$( ".gallery li a" ).each( function() {
					var currLink = $( this );				
					currLink.before( $( preloader ).addClass( "loader" ).clone() );
					
					var imageLink = $( "<a></a>" ).attr( "href", $( this ).attr( "href" ) );
					
					var loadImage = new Image();
					
					loadImage.onload = function() {
                        whichPic = currLink.attr( "class" ).replace( /pic/, "" );
                        
                        var thisImage = $( this );
                        thisImage.css( { "display": "none", "left": ( whichPic * $( "#main-image" ).width() ) + "px" } ).show();
                        
                        currLink.show();
                        currLink.parent().find( ".loader" ).fadeOut();
                        
                        $( "#image-holder" ).append( imageLink.append( $( this ).addClass( currLink.attr( "class" ) ).css( "z-index", "0" ) ).fancybox( fancyboxOptions ) );
                        
                        if( currLink.parent().is( ":first-child" ) ) {
                            currNum = whichPic;
                            currLink.addClass( "selected" );
                            $( "#main-image img:first-child" ).fadeIn().addClass( "first" );
                            
                            enlargeLink.attr( "href", imageLink.attr( "href" ) ).fancybox( fancyboxOptions ).fadeIn();
                        }
					}
					
					loadImage.src = $( this ).attr( "rel" );
					
					$( this ).bind( 'click', clickFunction );		
				} ); // each
            }
		
            function clickFunction() {
                if( $( this ).css( "display" ) != "none" ) {
    				lastNum = currNum;
    				currNum = $( this ).attr( "class" ).replace( /pic/, "" );
    				var currPic = $( "#main-image .pic" + currNum );
    				
    				if( !currPic.hasClass( "first" ) ) {
    					$( ".gallery li a.pic" + lastNum ).removeClass( "selected" );
    					$( this ).addClass( "selected" );
    					var lastPic = $( "#main-image .first" );
    					
    					lastPic.css( "z-index", "0" ).removeClass( "first" );
    					currPic.css( "z-index", "50" ).addClass( "first" );
    					
    					$( "#image-holder" ).animate( { left: -( currNum * $( "#main-image" ).width() ) }, 800, 'easeOutCubic' );
    				}
    				
    				enlargeLink.attr( "href", $( this ).attr( "href" ) ).fancybox( fancyboxOptions );
    				
    				$( this ).unbind( 'click', clickFunction ).bind( 'click', noClick );    
    				$( ".gallery a.pic" + lastNum ).unbind( 'click', noClick ).bind( 'click', clickFunction );			
    			}
    			
                return false;
    		}
    		
    		function noClick() {
                return false;
    		}
            
            preloader.onload = null;
		};
		
		preloader.src = "/lib/img/loader-" + currColor + ".gif";
} );
