(function($){
    $.fn.backgroundSlider = function(c) {
        
        var $galleryList = $(this);
        var interv = setInterval(function(){
            changeSlide($galleryList, 'right');
        }, 10000);
        $galleryList.find('li').hide();
        $galleryList.find('.current-slide').show();
        
        $(document).keyup(function(e){
            if(e.keyCode == 37) {
                changeSlide($galleryList, 'left');
            } else if(e.keyCode == 39) {
                changeSlide($galleryList, 'right');
            }
        });
        
        $("#left-arrow, #right-arrow").find('a').click(function(){
            
            var dimension = $(this).parent().attr('id') == 'left-arrow' 
            ? 'left' : 'right';
            
            changeSlide($galleryList, dimension);
            clearInterval(interv);
            interv = setInterval(function(){
                changeSlide($galleryList, 'right');
            }, 10000);
            return false;
        });
        
    };
    
})(jQuery);

var changeSlide = function($galleryList, dimension) {
    var $currentSlide = $galleryList.find('.current-slide');
            
    var $nextSlide = dimension == 'left' 
    ? $currentSlide.prev('li') 
    : $currentSlide.next('li');

    if($nextSlide.length < 1 && dimension == 'left') {
        $nextSlide = $galleryList.find('li:last');
    } else if($nextSlide.length < 1 && dimension == 'right') {
        $nextSlide = $galleryList.find('li:first');
    }
    $currentSlide.removeClass('current-slide');
    $nextSlide.addClass('current-slide');

    $currentSlide.stop(true,true).fadeOut('fast', function(){
        $nextSlide.stop(true,true).fadeIn(1000);
    });
    

    if($nextSlide.find('a').find('img').length < 1) {
        $('#ajax-loader').fadeIn();
        var imageTag = '<img style="display:none;" src="' 
        + $nextSlide.find('a').attr('href') + '" alt="'
        + $nextSlide.find('a').attr('href') + '" />';
        $nextSlide.find('a').find('img').remove();
        $nextSlide.find('a').append(imageTag);

        $nextSlide.find('img').load(function(){
            $("#ajax-loader").fadeOut();
            $(this).fadeIn();
        });
    }
}


