var root_path;

var Fading = new Class({
	
	initialize: function(div_id)
	{
		this.element = $(div_id);
		this.element.set('tween', {duration: 1000, link: 'chain'});
		this.element.tween('opacity', 1, 0);
	},
	
	init: function(href,tag)
	{
		//prima fermo eventuali altri loop
		this.stop();
		
		var fotojson;
		var foto = new Array();
		//recupero json da href
		var req = new Request.JSON({
			url: href, // l'url da contattare
			async: true,
			onComplete: function(json) {
				for(var i=0;i<json.items.length;i++)
				{
					foto[i] = json.items[i].url;
				}
				fading.arrFoto = foto;
				fading.start(tag);
	        }
			});
		req.get();
		
	},
	
	work: function(tag)
	{
		var json = this.arrFoto;
		this.count++;
		if (this.count>= json.length) this.count=0;
		
		var fxFade = new Fx.Tween(this.element,{'property':'opacity'});
		fxFade.start(0).chain(function(){
			if ($('immagine' + this.element)!=null) $('immagine' + this.element).dispose(); 
			var img = new Element('img',{'src': json[fading.count], 'id': 'immagine' + this.element});
			img.inject(fading.element);
			return this.callChain();
		}).chain(function(){fxFade.start(1);});
		
	},

	
	start: function(tag)
	{
		this.count = 0;
		var f = function(){fading.work(tag);}
		fading.work(tag);
		if (this.arrFoto.length>1) this.go = f.periodical(8000);
	},
	
	stop: function()
	{
		$clear(this.go);	
	}
});

columnRotator = new Class({

    initialize: function(dateString){

        this.position = 1;

        this.startTimer();

    },

    updateCount: function(){
        var dx = $('colonnadx');
        var pdx = $('pathdx').value;
	var pos = this.position;
	if (this.position == 8) {
		this.position = 1;
	} else {
		this.position++;
	}
        var fdx = new Fx.Tween(dx,{
        duration: 1500,
        onComplete: function(){        
                        if ($('immaginedx')!=null) $('immaginedx').dispose();
                        var img = new Element('img',{'src': '/prodotti_immagini/' + pdx + '/' + pos + '.png', 'id': 'immaginedx', 'style':'display:block;margin-left:auto;margin-right:auto;'});
                        img.inject(dx);
                        dx.fade('in');
        }
    });
    fdx.start('opacity',1,0);

    },

    stopTimer: function(){

        $clear(this.periodicalTimer);

    },

    startTimer: function(){

        this.periodicalTimer = this.updateCount.periodical(10000, this);

    }

});

var fading;
var colonna;

window.addEvent('domready', function(){ 
	fading = new Fading('rotazionehome');
	fading.init('/json/immagini.php','fading');
	//colonna  = new columnRotator('');

});

