(function(window, undefined) {
	// Opzioni varie settabili: ogni elemento dell'array rappresenta uno slideshow con i vari parametri
	// {id: string, delay: int, start_frame: int, end_frame: int}
	var anim_container_ids = [{id:'slide-images', delay:5000}, {id:'slide-images2', delay:4000}];

	function init_animations() {
		var i, l;

		for(i = 0, l = anim_container_ids.length; i < l; ++i) {
			start_slideshow(anim_container_ids[i]);
		}
	}

	function start_slideshow(options) {
		var elements = document.getElementById(options.id).getElementsByTagName('li')
		  , current_frame
		  , start_frame = options.start_frame
		  , end_frame   = options.end_frame
		  , delay       = options.delay
		  , i, l;

		if(isNaN(start_frame)) start_frame = 0;
		if(isNaN(end_frame))   end_frame   = elements.length-1;
		if(isNaN(delay))       delay       = 5000;

		current_frame = start_frame;

		// Controlliamo che si veda solo il primo li
		for(i = 1, l = elements.length; i < l; ++i) {
			elements[i].style.display = 'none';
		}

		setTimeout(fadeInOut, delay);

		function fadeInOut() {
			Effect.Fade(elements[current_frame]);
			if (current_frame >= end_frame) current_frame = start_frame;
			else current_frame++;
			Effect.Appear(elements[current_frame]);
			setTimeout(fadeInOut, delay);
		}
	}

	Event.observe(document, 'dom:loaded', init_animations);
})(this);

