//plugin tendina
(function() {
	//var wrapper = 'ul';
	//var delay = 500;

	//metodi pubblici
	jQuery.fn.tendina = function(settings) {
		//contenitori da trasformare in tendine
		
		var cTendine = this;
		
		settings = jQuery.extend({
	    delay: 500,
	    wrapper: 'ul'
		}, settings);
		
		//inizializzo e attivo gli eventi su ciascun menu
		return cTendine.each(function() {
			inizializzaTendina(this, settings);
			gestisciEventi(this, settings);
		});
	};
	
	//metodi privati
	function inizializzaTendina(menu, settings) {
		jQuery(menu).find('li:has('+settings.wrapper+')').addClass('hafigli');
		jQuery(menu).find(settings.wrapper).hide();
	}
	
	function gestisciEventi(menu, settings) {
		var items = jQuery('li', menu); 
		items.hover(function() {
			showTendina(this, settings);
		}, function() {
			hideTendina(this, settings);
		});
	}
	
	function showTendina(li, settings) {
		var wrapper = jQuery('>'+settings.wrapper,li);
		jQuery(li).filter(':has('+settings.wrapper+')').find('>a').addClass('active');
		jQuery(li).siblings('li').find('>a.active').removeClass('active');
		if (li.timer) {
			clearTimeout(li.timer);
		}
		//jQuery(li).siblings('li').find('>'+settings.wrapper).stop().css('opacity', 1).hide();
		//wrapper.fadeIn('fast');
		jQuery(li).siblings('li').find('>'+settings.wrapper+':visible').hide();
		wrapper.show();
	}
	
	function hideTendina(li, settings) {
		var wrapper = jQuery('>'+settings.wrapper, li);
		if (li.timer) {
			clearTimeout(li.timer);
		}
		if (wrapper.length > 0) {
			li.timer = setTimeout(function() {
				wrapper.hide();
				jQuery('>a', li).removeClass('active');
			}, settings.delay);
		}
        /* else {
			jQuery('>a', li).removeClass('active');
		}*/
	}
})(jQuery);
