/**
 * Banner (Viviss)
 *   Top three images, changing and fading on every few seconds.
 *
 * Built on top of jQuery library
 *   http://jquery.com/
 * */

jQuery.fn.banner = function (o)
{
    return this.each(function() {
        
        var me = jQuery(this);

        var preloaded = new Array();

        // preload every banner image
        me.find("a").each(function(i, dom) {
            var img = new Image();
            img.src = this.href;
            
            preloaded.push(img.src);
        });
        
        function switcher() {

            // do nothing if there is not enough images
            if (preloaded.length < 3)
                return;
    
            // shuffle that list
            var i = preloaded.length;
            while ( --i ) {
                var j = Math.floor( Math.random() * ( i + 1 ) );
                var tmp_i = preloaded[i];
                var tmp_j = preloaded[j];
                preloaded[i] = tmp_j;
                preloaded[j] = tmp_i;
            }

            // all three 'banners' (divs)
            var banners = Array("#banner0", "#banner1", "#banner2");
    
            // hide, switch and show :)
            $(banners).each(function(i, dom) {
                if ($(banners[i]).css('display') == 'block') {
                    $(banners[i]).fadeOut('slow');
                } else {
                    $(banners[i]).css('backgroundImage', 'url(' + preloaded[i] + ')');
                    $(banners[i]).fadeIn('slow');
                }
            });
        };

        switcher();
        setInterval(switcher, 7000);

    });
    
};
