$(document).ready(function ()
{
	var all_logos = $('div.brands table.brand');
	var transition_time = 1500;
	var pause_time = 3000;
	
	// random order
    all_logos.hide();
    var logos = all_logos.get();
    logos.sort(function () { return 0.5 - Math.random(); });
    var cur = 0;

    var container = all_logos.parent();
	
	function show_next() {
	    var next = cur + 1;
	    if (next >= logos.length) {
	        next = 0;
	    }
	    var $next = $(logos[next]);
	    var $cur = $(logos[cur]);
	    $next.css({'display':'block', 'opacity':0}).appendTo(container).
	        animate({'opacity':1}, transition_time, function () {
	            cur = next;
	            $cur.hide();
	            window.setTimeout(show_next, pause_time);
	        });
	}
    
    // preload all logos
    var to_load = all_logos.size();
    all_logos.each(function () {
        var pl = $('<img/>');
        pl.load(function () {
            to_load = to_load - 1;
            if (to_load == 0) {
                $(logos[0]).show();
                window.setTimeout(show_next, pause_time);
            }
        });
        pl.attr('src', $(this).find('img').attr('src'));
    });
});
