$(document).ready(function() {
    var first_image = $($('#banner_wrapper .main_banner_images a')[0]);
    var num_images = $('#banner_wrapper .main_banner_images a').length;
    var interval = 6000;
    var fade_interval = 1400;
    
    var timeout_hanlder = setTimeout(cycleImages, interval, interval, first_image);
    
    function cycleImages(interval, active_image){
        var new_id = parseInt(active_image.attr('id').split('_')[3], 10)+1;
        if(new_id > num_images)
            new_id = 1;
        
        var next_image = $('#banner_wrapper .main_banner_images a#main_banner_image_'+new_id);
        swapImages(active_image, next_image, function(){
            clearTimeout(timeout_hanlder);
            timeout_hanlder = setTimeout(cycleImages, interval, interval, next_image);
        });
    }
    
    function swapImages(previous, next, callback){
        
        if(previous.attr('id') != next.attr('id')){
            previous.fadeOut(fade_interval);
            next.find('.main_banner_description_text').slideDown(450);
            next.fadeIn(fade_interval, function(){
                callback();
            });
        }
        else{
            callback();
        }
    }
    
    $('#banner_wrapper .main_banner_thumbs .main_banner_image_anchor').click(function(){
        clearTimeout(timeout_hanlder);
        
        var cur_image = $('#banner_wrapper .main_banner_images a:visible');
        var new_id = $(this).attr('id').split('_')[3];
        var next_image = $('#banner_wrapper .main_banner_images a#main_banner_image_'+new_id);
        swapImages(cur_image, next_image, function(){
            clearTimeout(timeout_hanlder);
            timeout_hanlder = setTimeout(cycleImages, interval, interval, next_image);
        });
        return false;
    });
});
