﻿$(document).ready(function() {

    $('.ThumbnailsUnstyled').addClass('Thumbnails'); // adds new class name to maintain degradability

    $('ul.Thumbnails').galleria({
        history: false, // activates the history object for bookmarking, back-button etc.
        clickNext: false, // helper for making the image clickable
        insert: '#MainImage', // the containing selector for our main image
        onImage: function(image, caption, thumb) { // let's add some image effects for demonstration purposes

            // fade in the image & caption
            image.css('display', 'none').fadeIn(1000);
            caption.css('display', 'none').fadeIn(1000);

            // resize image width
            var width = image.width();
            var height = image.height();
            var targetSize = $('#MainImage').width();
/*
            if (width > targetSize || height > targetSize) {
                var imgHeight = imgWidth = targetSize;

                if (width >= height) {
                    imgHeight = height * targetSize / width;
                }
                else
                    imgWidth = width * targetSize / height;

                image.css({ width: imgWidth, height: imgHeight, marginTop: -(imgHeight - targetSize) / 2 });
            }
*/
            image.css({ marginTop: -(height - targetSize) / 2 });
            
            // fetch the thumbnail container
            var _li = thumb.parents('li');

            // fade out inactive thumbnail
            _li.siblings().children('img.selected').fadeTo(500, 0.6);

            // fade in active thumbnail
            thumb.fadeTo('fast', 1).addClass('selected');
        },
        onThumb: function(thumb) { // thumbnail effects goes here

            // fetch the thumbnail container
            var _li = thumb.parents('li');

            // if thumbnail is active, fade all the way.
            var _fadeTo = _li.is('.active') ? '1' : '0.6';

            // fade in the thumbnail when finnished loading
            thumb.css({ display: 'none', opacity: _fadeTo }).fadeIn(1500);

            // hover effects
            thumb.hover(
                function() { thumb.fadeTo('fast', 1); },
                function() { _li.not('.active').children('img').fadeTo('fast', 0.6); } // don't fade out if the parent is active
            )
        }
    });
});