
var DSD_itemscroller;

if (DSD_itemscroller == undefined) {
	DSD_itemscroller = function (thesettings) {

		var settings	="object";
		var feed_lines	="object";
		var container = "object";
		this.init(thesettings);
	};
}



	DSD_itemscroller.prototype.add_item=function(obj){
		//	this.feed_lines.push(html);

		var new_div = new Element('div', {styles: { float : 'left', overflow:'hidden', 'margin-right':'10px'}, 'html': ''});

//		var new_div = new Element('div', {'class': 'DSD_scroll_item_container', 'html': ''});
//		new_div.set('class','DSD_scroll_item_container');


		new_div.wraps(obj);

		this.feed_lines.push(new_div);
		new_div.setStyle('visibility','hidden');
	}

	DSD_itemscroller.prototype.start=function() {
		for (var i=0; i<this.settings.maxitems; i++)
		{
			if(i<this.feed_lines.length) {
				this.insert_next_item(i);
				this.itemindex++;
			}
		}

		// start timeout!
		var self=this;

		if(this.feed_lines.length>this.settings.maxitems) {
			this.feedtime=setInterval(function() { self.next_item(); } ,self.settings.delayms);
		}

	}

	DSD_itemscroller.prototype.insert_next_item=function(i,fade) {

//			var new_div = new Element('div', {styles: { float : 'left' }, 'html': this.feed_lines[i].get('html')});
//alert(new_div.html);

			var  new_div=this.feed_lines[i];
			if (new_div!=null && fade==true)
			{
//				alert(new_div.get('html'));
				new_div.fade('hide');
			//	new_div.set('overflow','hidden');


//				alert(this.feed_lines[i].getStyle('width'));
				new_div.setStyle('width',0);


				new_div.set('tween', {duration: this.settings.tweendelayms, link:'chain',onChainComplete: function(){
						new_div.fade('show');
					}
				});
				new_div.tween('width', '100%');
				if (!Browser.Engine.trident)
				{
					new_div.fade('in');
				}



			} else
			if (new_div!=null)
			{
			//	new_div.setStyle('height','width', '110%');
			//	new_div.setStyle('visibility','visible');
				new_div.fade('show');
			}

			if (new_div!=null) {
				this.visible_items.push(new_div);
				new_div.inject(this.container,'top');
			}

//			new_div.tween('tween', {property: 'opacity', duration: 2000}).start(100);
			if(this.visible_items.length > this.settings.maxitems) {
				// delete item after max
				var el=this.visible_items.shift();
				el.fade('hide');
				//alert(el);
			//	el.dispose();
			}


	}

	DSD_itemscroller.prototype.next_item=function(){
		this.insert_next_item(this.itemindex,true);
		this.itemindex++;
		if (this.itemindex>=this.feed_lines.length)
		{
			this.itemindex=0;
		}

	}



	DSD_itemscroller.prototype.init = function (thesettings) {
		// graag de settings initialiseren.
		this.feed_lines=[];
		this.itemindex=0;

		this.visible_items=[];

		this.container=$(thesettings.containerID);
		if ( typeof(thesettings) =='object') {
			this.settings=thesettings;
		}

		if(this.settings.tweendelayms==null) this.settings.tweendelayms=200;
		if(this.settings.delayms==null) this.settings.delayms=4000;



		if(typeof(this.settings.id)=='string') {
			this.container = $(this.settings.id);
		} else {
			this.container = this.settings.id;
		}


		var children = this.container.getChildren('[class=DSD_scroll_item]'); //div[class=DSD_scroll_item]

//		var children=$$('DSD_scroll_item');
//		alert(children.length);

		for(var i=0;i<children.length;i++) {
			//alert(children[i].get('html'));
			this.add_item(children[i]);
		}

		this.start();

//		alert(typeof(this.settings.id));



//		if (this.container) { }




		//alert('init');

	}

