﻿var menudropdownconfig = new Array();

(function($){

	$.fn.menudropdown = function(opcoes)
	{
		var defaults = {
			timeout: 500,
			closetimer: 0
		};
		opcoes = $.extend(defaults, opcoes);
		menudropdownconfig['menudropdowntimeout'] = defaults['timeout'];
		menudropdownconfig['menudropdownclosetimer'] = defaults['closetimer'];
		menudropdownconfig['menudropdownclosetimer'] = null;
		menudropdownconfig['menudropdownitem'] = null;
		$(this).bind('mouseover', $.menudropdownopen);
		$(this).bind('mouseout', $.menudropdowntimer);
	};

	$.menudropdownopen = function()
	{
		$.menudropdowncanceltimer();
		$.menudropdownclose();
		menudropdownconfig['menudropdownitem'] = $(this).find('ul').css('visibility', 'visible');
	};

	$.menudropdownclose = function()
	{
		if(menudropdownconfig['menudropdownitem'])
			menudropdownconfig['menudropdownitem'].css('visibility', 'hidden');
	}

	$.menudropdowntimer = function()
	{
		menudropdownconfig['menudropdownclosetimer'] = window.setTimeout($.menudropdownclose, menudropdownconfig['menudropdowntimeout']);
	}

	$.menudropdowncanceltimer = function()
	{
		if(menudropdownconfig['menudropdownclosetimer'])
		{
			window.clearTimeout(menudropdownconfig['menudropdownclosetimer']);
			menudropdownconfig['menudropdownclosetimer'] = null;
		}
	}

})(jQuery);
