(function($) {
/*
 * A basic news ticker.
 *
 * @name     newsticker (or newsTicker)
 * @param    delay      Delay (in milliseconds) between iterations. Default 4 seconds (4000ms)
 * @author   Sam Collett (http://www.texotela.co.uk)
 * @example  $("#news").newsticker(); // or $("#news").newsTicker(5000);
 *
 */
$.fn.newsTicker = $.fn.newsticker = function(delay)
{
    delay = delay || 4000;
    initTicker = function(el)
    {
        stopTicker(el);
        el.items = $("li", el);
        el.images = $("li img", el);
        
        // hide all items (except first one)
        el.items.not(":eq(0)").hide().end();
        // current item
        el.currentitem = 0;
        startTicker(el);
    };
    startTicker = function(el)
    {
        el.tickfn = setInterval(function() { doTick(el) }, delay)
    };
    stopTicker = function(el)
    {
        clearInterval(el.tickfn);
    };
    pauseTicker = function(el)
    {
        el.pause = true;
    };
    resumeTicker = function(el)
    {
        el.pause = false;
    };
    doTick = function(el)
    {
        // don't run if paused
        if(el.pause) return;
        // pause until animation has finished
        el.pause = true;
        // hide current item
        $(el.items[el.currentitem]).hide();
        el.currentitem = ++el.currentitem % (el.items.size());
        
        
        $(el.items[el.currentitem]).show()
        $(el.images[el.currentitem]).css('display', 'inline');
        $(el.images[el.currentitem]).css('background-color', '#'+THEME_COLOR);
        $(el.images[el.currentitem]).attr('src', '/images/home_news_button.png');
        $(el.images[el.currentitem]).addClass('png');
        $(el.images[el.currentitem]).ifixpng();
        
        
        
        el.pause = false;
    };
    this.each(
        function()
        {
            if(this.nodeName.toLowerCase()!= "ul") return;
            initTicker(this);
        }
    )
    .addClass("newsticker")
    .hover(
        function()
        {
            // pause if hovered over
            pauseTicker(this);
        },
        function()
        {
            // resume when not hovered over
            resumeTicker(this);
        }
    );
    return this;
};

})(jQuery);
