/**

 * @author: $Author: fabiomcosta $
 * @version 1.0.1 $Revision: 1 $
 * @lastchange: $Date: 2009-13-06 13:48:00 -0200 (Thu, 13 Jun 2009) $
 *
 *
 * Copyright (c) 2009 Francke Peixoto 
	Autor: Francke Peixoto
	Exemplo : 
		$("#ticker").StartTicker({
				stop: false,
				currenItem: 0,
				Url: 'Feeds.asp', 
				Interval: 2000, 
				TickerNode: "#rss li"
			});
		});
 */
(function($)
	{
		$.fn.extend({
			Ticker : function(options)
			{
				//Set Default
				options.stop = options.stop || false,
				options.currenItem =  options.currenItem || 0,
				options.Url = options.Url ||'', 
				options.Interval = options.Interval || 3000, 
				options.TickerNode = options.TickerNode || "#ticker li",
				options.Itens = options.Itens || 0,
				options.MessageLoad = options.MessageLoad || "Carregando..."
				//
				var ID = this[0].id
				
				var ticker = 
				{
					id: ID
					, Start: function(tickerElement)
					{
						var tickerObject = this;
						if(options.Url != '')
						{
							tickerElement.html(options.MessageLoad);
							$.ajax({
								type: "POST",
								url: options.Url,
								data: "",
								success: function(msg)
								{
									tickerElement.html(msg);
									tickerElement.hover(function(){ options.stop = true },function(){ options.stop = false });
									options.Itens = $(options.TickerNode).hide().size();
									$(options.TickerNode+":eq("+options.currenItem+")").show();
									tickerObject.Run(tickerElement);
								}
							});
						}
						else
						{
							tickerElement.hover(function(){ options.stop = true },function(){ options.stop = false });
							options.Itens = $(options.TickerNode).hide().size();
							$(options.TickerNode+":eq("+options.currenItem+")").show();
							this.Run(tickerElement);
						}
					},
					Run : function(tickerElement)
					{
						var tickerObject = this;
											 
						if(options.stop == false)
						{   /*
							console.log(options.currenItem)
							console.log("########### meio ############")
							console.log(options.Itens)
							*/
							$(options.TickerNode+":eq("+options.currenItem+")").fadeOut('slow').hide();
							options.currenItem = ++options.currenItem%options.Itens;
							$(options.TickerNode+":eq("+options.currenItem+")").fadeIn('slow');
						}
						
					 	window.setTimeout(function()
						{
							
							tickerObject.Run(tickerElement);
						},options.Interval);
					}
				}		
				
				ticker.Start(this);
			}
			
		});
	}
	
)(jQuery);
