(function($){var name='newsTicker';function runTicker(settings){tickerData=$(settings.newsList).data('newsTicker');if(tickerData.currentItem>tickerData.newsItemCounter){tickerData.currentItem=0;}
else if(tickerData.currentItem<0){tickerData.currentItem=tickerData.newsItemCounter;}
if(tickerData.currentPosition==0){if(tickerData.newsLinks[tickerData.currentItem].length>0){$(tickerData.newsList).empty().append('<li><a href="'+tickerData.newsLinks[tickerData.currentItem]+'"></a></li>');}
else{$(tickerData.newsList).empty().append('<li></li>');}}
if(tickerData.animating){if(tickerData.currentPosition%2==0){var placeHolder=tickerData.placeHolder1;}
else{var placeHolder=tickerData.placeHolder2;}
if(tickerData.currentPosition<tickerData.newsItems[tickerData.currentItem].length){var tickerText=tickerData.newsItems[tickerData.currentItem].substring(0,tickerData.currentPosition);if(tickerData.newsLinks[tickerData.currentItem].length>0){$(tickerData.newsList+' li a').text(tickerText+placeHolder);}
else{$(tickerData.newsList+' li').text(tickerText+placeHolder);}
tickerData.currentPosition++;setTimeout(function(){runTicker(settings);settings=null;},tickerData.tickerRate);}
else{if(tickerData.newsLinks[tickerData.currentItem].length>0){$(tickerData.newsList+' li a').text(tickerData.newsItems[tickerData.currentItem]);}
else{$(tickerData.newsList+' li').text(tickerData.newsItems[tickerData.currentItem]);}
setTimeout(function(){if(tickerData.animating){tickerData.currentPosition=0;tickerData.currentItem++;runTicker(settings);settings=null;}},tickerData.loopDelay);}}
else{var tickerText=tickerData.newsItems[tickerData.currentItem];if(tickerData.newsLinks[tickerData.currentItem].length>0){$(tickerData.newsList+' li a').text(tickerText);}
else{$(tickerData.newsList+' li').text(tickerText);}}}
jQuery.fn[name]=function(options){var settings=jQuery.extend({},jQuery.fn.newsTicker.defaults,options);var newsItems=new Array();var newsLinks=new Array();var newsItemCounter=0;$(settings.newsList+' li').hide();$(settings.newsList+' li').each(function(){if($(this).children('a').length){newsItems[newsItemCounter]=$(this).children('a').text();newsLinks[newsItemCounter]=$(this).children('a').attr('href');}
else{newsItems[newsItemCounter]=$(this).text();newsLinks[newsItemCounter]='';}
newsItemCounter++;});var tickerElement=$(settings.newsList);tickerElement.data(name,{newsList:settings.newsList,tickerRate:settings.tickerRate,startDelay:settings.startDelay,loopDelay:settings.loopDelay,placeHolder1:settings.placeHolder1,placeHolder2:settings.placeHolder2,controls:settings.controls,ownControls:settings.ownControls,stopOnHover:settings.stopOnHover,newsItems:newsItems,newsLinks:newsLinks,newsItemCounter:newsItemCounter-1,currentItem:0,currentPosition:0,firstRun:1}).bind({stop:function(event){tickerData=tickerElement.data(name);if(tickerData.animating){tickerData.animating=false;}},play:function(event){tickerData=tickerElement.data(name);if(!tickerData.animating){tickerData.animating=true;setTimeout(function(){runTicker(tickerData);tickerData=null;},tickerData.startDelay);}},resume:function(event){tickerData=tickerElement.data(name);if(!tickerData.animating){tickerData.animating=true;tickerData.currentPosition=0;tickerData.currentItem++;runTicker(tickerData);}},next:function(event){tickerData=tickerElement.data(name);$(tickerData.newsList).trigger("stop");tickerData.currentPosition=0;tickerData.currentItem++;runTicker(tickerData);},previous:function(event){tickerData=tickerElement.data(name);$(tickerData.newsList).trigger("stop");tickerData.currentPosition=0;tickerData.currentItem--;runTicker(tickerData);}});if(settings.stopOnHover){tickerElement.bind({mouseover:function(event){tickerData=tickerElement.data(name);if(tickerData.animating){$(tickerData.newsList).trigger("stop");if(tickerData.controls){$('.stop').hide();$('.resume').show();}}}});}
tickerData=tickerElement.data(name);if(tickerData.controls||tickerData.ownControls){if(!tickerData.ownControls){$('<ul class="ticker-controls"><li class="play"><a href="#play">Play</a></li><li class="resume"><a href="#resume">Resume</a></li><li class="stop"><a href="#stop">Stop</a></li><li class="previous"><a href="#previous">Previous</a></li><li class="next"><a href="#next">Next</a></li></ul>').insertAfter($(tickerData.newsList));}
$('.play').hide();$('.resume').hide();$('.play').click(function(event){$(tickerData.newsList).trigger("play");$('.play').hide();$('.resume').hide();$('.stop').show();event.preventDefault();});$('.resume').click(function(event){$(tickerData.newsList).trigger("resume");$('.play').hide();$('.resume').hide();$('.stop').show();event.preventDefault();});$('.stop').click(function(event){$(tickerData.newsList).trigger("stop");$('.stop').hide();$('.resume').show();event.preventDefault();});$('.previous').click(function(event){$(tickerData.newsList).trigger("previous");$('.stop').hide();$('.resume').show();event.preventDefault();});$('.next').click(function(event){$(tickerData.newsList).trigger("next");$('.stop').hide();$('.resume').show();event.preventDefault();});};$(tickerData.newsList).trigger("play");};jQuery.fn[name].defaults={newsList:"#news",tickerRate:80,startDelay:100,loopDelay:3000,placeHolder1:" |",placeHolder2:"_",controls:true,ownControls:false,stopOnHover:true}})(jQuery);
