var galleryAdv = null;

function gallerifficLoader(element, hasThumb, onMouseOutOpacity) {
    jQuery(element + ' ul.thumbs li').css('opacity', onMouseOutOpacity).hover(function () {jQuery(this).not('.selected').fadeTo('fast', 1.0);},function () {jQuery(this).not('.selected').fadeTo('fast', onMouseOutOpacity);});

    galleryAdv = jQuery(element + ' .content').galleriffic(element + ' .navigation', {
        imageContainerSel:      element + ' .slideshow',
        loadingContainerSel:    element + ' .loader',
        captionContainerSel:    element + ' .embox'
    });

    if(!hasThumb) {
        jQuery(element + ' .navigation').remove();
    } else {
        galleryAdv.settings.autoStart   =   true;
        galleryAdv.settings.onChange    =   function(prevIndex, nextIndex) {
            jQuery(element + ' ul.thumbs').children()
            .eq(prevIndex).fadeTo('fast', onMouseOutOpacity).end()
            .eq(nextIndex).fadeTo('fast', 1.0);
        },
        galleryAdv.settings.onTransitionOut =   function(callback) {
            jQuery(element + ' .slideshow, ' + element + ' .embox').fadeOut('fast', callback);
        },
        galleryAdv.settings.onTransitionIn  =   function() {
            jQuery(element + ' .slideshow, ' + element + ' .embox').fadeIn('fast');
        },
        galleryAdv.settings.onPageTransitionOut =   function(callback) {
            jQuery(element + ' ul.thumbs').fadeOut('fast', callback);
        },
        galleryAdv.settings.onPageTransitionIn  =   function() {
            jQuery(element + ' ul.thumbs').fadeIn('fast');
        }
        galleryAdv.play();
    }

    return galleryAdv;
}

function gallerifficZoom(filename) {
    Shadowbox.open({
        player: 'img',
        content: filename,
        options: {
            onClose: function () { if(galleryAdv.settings.autoStart) galleryAdv.play(); }
        }
    });
    galleryAdv.pause();
}
