//CONTINUOUS NEWS TICKER
//
//Pinquin.nl
//Date: 2010-12-14
//Version: 0.3
//Jquery version: 1.4.4
//
/*Changes
 * Stop toegevoegd
 * Stop functie verbeterd
 */
//jQuery("#newsstream_content").ticker({step: '30', speed: '500', marginNext: '10'});

( function(jQuery) {
	var defaults, first, last;
	jQuery.fn.ticker = function(options) {	
		defaults = { step: '30', speed: 500, marginNext: 10 };//Standaard waarden
		var options = jQuery.extend( defaults, options );
			return this.each( function() {
			var h = 0;
			var newsticker = jQuery(this);
			jQuery(newsticker).children().each( function( i, n ) {//Zet alle newsitems op de start positie
				jQuery(n).css({left: h + "px"});
				h += (parseInt( defaults.marginNext ) + jQuery(n).width());
			});
			jQuery(newsticker).css("width", h + "px");
			jQuery( jQuery(newsticker).children()[jQuery(newsticker).children().length - 1] ).addClass('last_tickeritem');
			start();//Start de newsticker

			function ticker(item) {
				jQuery(item).animate( { left: '-=' + defaults.step}, parseInt( defaults.speed ), 'linear', function() {
					if( jQuery(this).position()['left'] + jQuery(this).width() < 0 ) {
						last = jQuery(".last_tickeritem").removeClass('last_tickeritem');
						first = jQuery(this).addClass('last_tickeritem').css({ left: Math.round( jQuery(last).position()['left'] + jQuery(last).width() + parseInt( defaults.marginNext ) ) + "px"}).remove();
						jQuery(newsticker).append( jQuery(first) );
						ticker( jQuery(first) );
					} else ticker( jQuery(this) );
				});
			}
			
			jQuery(newsticker).parent().hover( function() { jQuery(this).children().children().stop(); }, function() { start(); });
			function start() { jQuery(newsticker).children().each( function( i, n ) { ticker(jQuery(n)); }); }
			
		});
	};
} )( jQuery );
