/**
 * Multi-level Drop Down Menu 2.0
 * August 22, 2009
 * Corey Hart @ http://www.codenothing.com
 */ 
;(function(a){a.fn.reverse=[].reverse;a.fn.dropDownMenu=function(b){return this.each(function(){var d=a(this),j=[],g,l,c,e,h=a.extend({timer:500,parentMO:null,childMO:null,levels:[],numberOfLevels:5},b||{},a.metadata?d.metadata():{});if(h.levels.length){h.numberOfLevels=h.levels.length}else{h.levels[0]=h.parentMO?h.parentMO:h.childMO;for(var k=1;k<h.numberOfLevels+1;k++){h.levels[k]=h.childMO}}j[0]=d.children("li");for(var k=1;k<h.numberOfLevels+1;k++){g=h.levels[k-1];j[k]=j[k-1].children("ul").children("li");j[k-1].mouseover(function(){c=a(this);e=c.children("a");if(l){clearTimeout(l)}a("a",c.siblings("li")).each(function(){var i=a(this),m=i.data("classname");if(i.hasClass(m)){i.removeClass(m)}});c.siblings("li").find("ul:visible").reverse().hide();e.addClass(e.data("classname")).siblings("ul").show()}).mouseout(function(){if(a(this).children("a").data("classname")==h.levels[0]){l=setTimeout(f,h.timer)}}).children("a").data("classname",g)}a(document).click(f);function f(){a("a",d).each(function(){var i=a(this),m=i.data("classname");if(i.hasClass(m)){i.removeClass(m)}});a("ul:visible",d).reverse().hide();if(l){clearTimeout(l)}}})}})(jQuery);
