jQuery.fn.slider = function( settings, id ) {
    
    settings = jQuery.extend({
        headline : "Top Stories",
        speed : "normal",
        slideBy : 2,
        slideShow : 1 
    }, settings);
    return this.each(function() {
        jQuery.fn.slider.run( jQuery( this ), settings, id );
    });
};
jQuery.fn.slider.run = function( $this, settings, id ) {
    jQuery( ".javascript_css", $this ).css( "display", "none" );
    var ul = jQuery( "ul:eq(0)", $this );
    var li = ul.find('li');
    if ( li.length > settings.slideBy ) {
	  
        var $next = jQuery( "a.right" + id);
	var $back = jQuery( "a.left" + id);

        var liWidth = jQuery( li[0] ).width();
        var animating = false;
        ul.css( "width", ( li.length * liWidth ) );

        $next.click(function() {
            if ( !animating ) {
                animating = true;
                offsetLeft = parseInt( ul.css( "left" ) ) - ( liWidth * settings.slideBy );
                		   
                if ( offsetLeft + ul.width() - (liWidth * settings.slideShow) > 0 ) {
                    ul.animate({
                        left: offsetLeft
                    }, settings.speed, function() {
                        
                        animating = false;
                    });
                } else {
                    
                    ul.animate({
                        left: parseInt(ul.css( "left" )) - 30
                    }, 200, function() {
                        ul.animate({
                            left: 2
                        },500, function() {
                            animating = false;
                        });
                    });                    
                    return false;
               
                }
            }
            return false;
        });
        $back.click(function() {
            if ( !animating ) {
                animating = true;
                offsetRight = parseInt( ul.css( "left" ) ) + ( liWidth * settings.slideBy );
                if ( offsetRight + ul.width() - (liWidth * 1) <= ul.width() ) {
                    ul.animate({
                        left: offsetRight
                    }, settings.speed, function() {
                        
                        animating = false;
                    });
                } else {
                    ul.animate({
                        left: parseInt(ul.css( "left" )) + 30
                    }, 200, function() {
                        ul.animate({
                            left: (ul.width() - liWidth*settings.slideShow - 2) * (-1)
                        },500, function() {
                            animating = false;
                        });
                    });
                    return false;
                
                }
            }
            return false;
        });
    }
};

