var iSlideBox = new Class.create();
iSlideBox.prototype = {
	initialize : function (oArgs){
		this.current=0;
		this.data=oArgs;
		if ( this.data ) {
			this.newsCount=this.data.length;
			if ( !this.newsCount )
				alert('No data?');
			else
			{
				$$('a.idx').each( function (e,index) {
					e.observe("click", this.showNo.bindAsEventListener(this, index) );
				}.bind(this) );
				this.pe=new PeriodicalExecuter(this.cycle.bind(this), 15);
				this.preloadImages();
			}
		};
	  },
	  cycle: function() {
	  	this.current++;
	    if (this.current==this.newsCount)
	    	this.current=0;
	    new Effect.Fade('boximg', {
	      duration: 0.5,
	      fps: 50,
	      afterFinish: this.show.bind(this)
	    })
	  },
	  show: function() {
	  	$('imgbox').down('a').writeAttribute('href',this.data[this.current]['url']);
	  	$('boximg').writeAttribute('src',this.data[this.current]['img']);
	  	$('boximg').writeAttribute('alt',this.data[this.current]['title']);
	  	$('boximg').writeAttribute('title',this.data[this.current]['title']);
		new Effect.Appear('boximg', {
			duration: 0.5,
			fps: 50,
			queue:'end'
		})
	  	$('infobox').down('h3').down('a').innerHTML=this.data[this.current]['title'];
	  	$('infobox').down('h3').down('a').writeAttribute('href',this.data[this.current]['url']);
	  	//$('infobox').down('p.zajawka').down('a').innerHTML=this.data[this.current]['text'];
	  	//$('infobox').down('p.zajawka').down('a').writeAttribute('href',this.data[this.current]['url']);
		$('infobox').down('p.zajawka').innerHTML=this.data[this.current]['text'];
	  	$('infobox').down('span.miejsce').innerHTML=this.data[this.current]['place'];
	  	$('infobox').down('span.data').innerHTML=this.data[this.current]['date'];
	  	//$('infobox').down('span.koment').innerHTML=this.data[this.current]['comments'];
	  	$('infobox').down('span.koment').down('a').innerHTML=this.data[this.current]['comments'];
	  	$('infobox').down('span.koment').down('a').writeAttribute('href',this.data[this.current]['url']+'#comments');
	  	//$('infobox').down('span.wysw').innerHTML=this.data[this.current]['visits'];
	  	$$('a.idx').each(
			this.selectNo.bind(this)
	  	);
	  },
	  selectNo: function(e,index) {
  			index=this.newsCount-index-1;
  			if (index!==this.current)
  				e.removeClassName('sel');
  			else
  				e.addClassName('sel');
	  },
	  showNo: function(event, index) {
	  	this.pe.stop();
	  	this.current=this.newsCount-index-1;
	  	this.show();
	  	this.pe=new PeriodicalExecuter(this.cycle.bind(this), 15);
	  	return (false);
	  },
	  preloadImages: function()
	  {
        var IMAGE_CACHE = [];
        for (var i=0; i<this.newsCount; i++) {
		   IMAGE_CACHE[i]=new Image();
		   IMAGE_CACHE[i].src=this.data[i]['img'];
		}
      }
}