//plugin tabs
(function() {
	//metodi pubblici
	jQuery.fn.tabs = function(settings) {
		//contenitori da trasformare in tendine
		var containers = this;
		settings = jQuery.extend({
		handle: 'dt',
	    content: 'dd'
		}, settings);
		//inizializzo e attivo gli eventi su ciascun menu
		return containers.each(function() {
			init(this, settings);
			eventHandler(this, settings);
			timerHandler(this, settings);
		});
	};
	
	//metodi privati
	function init(panel, settings) {
		jQuery(settings.content,panel).not(':first').hide();
	}
	
	function eventHandler(panel, settings) {
		jQuery(settings.handle, panel).click(function() {
			var pane = jQuery(this).next();
			$('>a',this).addClass('active');
			$(this).siblings('dt').find('>a').removeClass('active');
			openPane(pane, settings);
			clearInterval(timeout);
			timerHandler(panel, settings);
		});
	}
	
	function timerHandler(panel, settings) {
		var panes = jQuery(settings.content, panel);
		var current = jQuery(settings.content+':visible', panel);
		i=0;
		for (j=0; j<panes.length; j++) {
			if (panes[i] == current) {
				i=j+1;
			}
		}
		timeout = setInterval(function() {
			i++;
			if (i>panes.length-1) {
				i=0;
			}
			openPane(panes[i], settings);
		}, 9000);
	}
	
	function openPane(pane, settings) {
		jQuery(pane).slideDown(2500);
        jQuery(pane).siblings(settings.content+':visible').slideUp(2500);
	}
})(jQuery);