/*

	----------------------------------------------------------------------------------------------------
	Accessible News Slider
	----------------------------------------------------------------------------------------------------
	
	Author:
	Brian Reindel
	
	Author URL:
	http://blog.reindel.com

	License:
	Unrestricted. This script is free for both personal and commercial use.

*/

jQuery.fn.accessNews = function( settings ) {
	settings = jQuery.extend({
        headline : "Top Stories",
        speed : "normal",
		slideBy : 1
    }, settings);
    return this.each(function() {
		jQuery.fn.accessNews.run( jQuery( this ), settings );
    });
};
jQuery.fn.accessNews.run = function ($this, settings) {
    jQuery(".javascript_css", $this).css("display", "none");
    var ul = jQuery("ul:eq(0)", $this);
    var li = ul.children();
    //debugger;
    if (li.length > Math.abs(settings.slideBy)) {
        var $next = jQuery(".next > a", $this);
        var $back = jQuery(".back > a", $this);
        var liWidth = jQuery(li[0]).width();
        var animating = false;
        ul.css("width", (li.length * liWidth));
        $next.click(function () {
            //debugger;
            if (!animating) {
                animating = true;
                offsetLeft = parseInt(ul.css("left")) - (liWidth * settings.slideBy);
                if (((-1)*offsetLeft) + ul.width() > 0) {
                    $back.css("display", "block");
                    ul.animate({
                        left: offsetLeft
                    }, settings.speed, function () {
                      
                        if (((-1)*parseInt(ul.css("left"))) + ul.width() +  (liWidth *( settings.slideBy)) <= 0) {
                           $next.css("display", "none");
                        }
                       animating = false;

                    });
                } else {
                    animating = false;
                    
                }
            }
            return false;
        });
        $back.click(function () {
            if (!animating) {
                animating = true;
                offsetRight = parseInt(ul.css("left")) + (liWidth *  settings.slideBy);
                if (offsetRight + ul.width() >= ul.width()) {
                    $next.css("display", "block");
                    ul.animate({
                        left: offsetRight
                    }, settings.speed, function () {
                        if (parseInt(ul.css("left")) == 0) {
                            $back.css("display", "none");
                        }
                        animating = false;
                    });
                } else {
                    animating = false;
                }
            }
            return false;
        });
        $next.css("display", "block")
			.parent().after(["<p class=\"view_all\">", settings.headline, " - ", li.length, " total ( <a href=\"#\">view all</a> )</p>"].join(""));
        jQuery(".view_all > a, .skip_to_news > a", $this).click(function () {
            var skip_to_news = (jQuery(this).html() == "Skip to News");
            if (jQuery(this).html() == "view all" || skip_to_news) {
                ul.css("width", "auto").css("left", "0");
                $next.css("display", "none");
                $back.css("display", "none");
                if (!skip_to_news) {
                    jQuery(this).html("view less");
                }
            } else {
                if (!skip_to_news) {
                    jQuery(this).html("view all");
                }
                ul.css("width", (li.length * liWidth));
                $next.css("display", "block");
            }
            return false;
        });
    }
};