/*
author: www.filbilisim.com
Haber Kaydırıcı
version :   2.0.1
version :   2.0.2 mootool 1.2 ye geçildi

IE bug giderildi (Cannot delete 'this!)
REQUIRES mootools 1.11

filWEB 2.0 daki haberleri ajax ile kayan hale getirir
*/
var haberKaydirici=new  Class(
{
	getOptions: function() {
		return {
			haberURL: '',
			set:0,
			maxSet:5,
			delay:5000,
			setData:new Array()
		}
	},
	initialize: function(options) {
		this.setOptions(this.getOptions(), options);
		if (this.options.initialize) this.options.initialize.call(this);


		this.getNewsSet();
	},
	reloadNewSet: function(){

		this.getNewsSet();
	},
	getNewsSet: function(){
		//alert(this.options.set+'-'+this.lastSet)
		if(this.lastSet==this.options.set) return false;
		this.lastSet=this.options.set;

		kaydirObject=this;
		//alert(this.options.maxSet)
		if(!this.options.setData[this.options.set] ){
			if(this.options.set >= this.options.maxSet + 1 ){
				this.options.set = 0;
				this.changeNewsSet(0);
				return;
			}

			var reqUrl=this.options.haberURL+this.options.set;		
			var myAjx = new Request({
				url: reqUrl,
				onSuccess: function(responseText, responseXML){
					kaydirObject.manageNewSet(responseText);
				}, 
				onFailure: function(){	}
			});
			myAjx.send();
		}else{
			this.changeNewsSet(this.options.set);
		}
	},
	manageNewSet: function (responseText){
		 
		this.options.setData[this.options.set]=responseText;
		if(!responseText) {
			this.options.maxSet=this.options.set-1;
			if(this.options.maxSet==0) {//tek seferde tüm haberler gösterilebiliyor demektir.

				return false;
			}

			this.options.set=0;
			this.changeNewsSet(0);
		}else{
			this.changeNewsSet(this.options.set);
		}
	},
	changeNewsSet: function (getSet){
		kaydirObject=this;
		
		
		nEl=$('haber_holder')
		var newsFx =new Fx.Tween(nEl);
		newsFx.start('opacity',1,0)
		 newsFx.addEvent('onComplete', function () {
		 	nEl.set('html',kaydirObject.options.setData[getSet]);
		 	nEl.fade(1);
		 });		
		this.options.set++;
		delay = this.reloadNewSet.delay(this.options.delay,this);
		if(this.options.set > this.options.maxSet) set=0;

	}

});
haberKaydirici.implement(new Events);
haberKaydirici.implement(new Options);






