(function($) {

	$.fn.swDropdownMenu = function(options){

		// defaults
		var defaults = {
				sensitivity: 7,	// number = sensitivity threshold (must be 1 or higher) ->number of pixels of mousemove between polling intervals, when the "over" function will be called
				interval: 10,	// number = milliseconds for onMouseOver polling interval ->higher number = longer delay for first dropdown-action
				over: doOpen,	// function = onMouseOver callback (REQUIRED)
				timeout: 300,	// number = milliseconds delay before onMouseOut
				out: doClose	// function = onMouseOut callback (REQUIRED)
		};

		var opts = $.extend(defaults, options);

		$(this).each(function() { // start each
		
			$(this).find("li").hoverIntent(opts);
			$(this).find("li ul li:has(ul)").find("a:first").append(" &raquo; ");
		
		}); // end each

	    function doOpen() {
	        $(this).find('ul:first').slideDown(300);
	    }

	    function doClose() {
	        $(this).find('ul:first').slideUp(100);
	    }

	};

})(jQuery);
