var UvumiDropdown=new Class({Implements:Options,options:{clickToOpen:false,openDelay:250,closeDelay:350,duration:200,link:'cancel',transition:Fx.Transitions.Quart.easeOut,mode:'horizontal'},initialize:function(menu,options){this.menu=menu;this.setOptions(options);if(this.options.mode!='horizontal'&&this.options.mode!='vertical'){this.options.mode='horizontal';}
if(Browser.Engine.webkit){window.addEvent('domready',this.dom_Ready.bind(this));}else{window.addEvent('domready',this.dom_Ready.bind(this));}
var url=window.location;this.currentUrl=url;},dom_Ready:function(){this.menu=$(this.menu);if(!$defined(this.menu)){return false;}
if(this.menu.get('tag')!='ul'){this.menu=this.menu.getElement('ul');if(!$defined(this.menu)){return false;}}
if(this.menu.getStyle('direction')=='rtl'||$(document.body).getStyle('direction')=='rtl'){this.rtl=true;if(Browser.Engine.trident&&$(document.body).getStyle('direction')=='rtl'){this.menu.getParent().setStyle('direction','ltr');this.menu.setStyle('direction','rtl');}}
this.menu.setStyles({visibility:'hidden',overflow:'hidden'});this.createSubmenu(this.menu);if(this.options.mode=='horizontal'){this.menu.getChildren('li').setStyles({display:'block',top:0});var clear=new Element('li',{html:"&nbsp;",styles:{clear:(this.rtl?'right':'left'),position:'relative',top:0,height:0,width:0,fontSize:0,lineHeight:0,margin:0,padding:0}}).inject(this.menu);}else{this.menu.getChildren('li').setStyles({display:'block',top:0});}
this.menu.setStyles({height:'auto',overflow:'visible',visibility:'visible'});links=this.menu.getElements('a');url=this.currentUrl;links.each(function(a){var parent;var parent2;var parent3;if(a.href==url){parent=a.getParent('li');parent2=parent.getParent('li');if(parent2)parent3=parent2.getParent('li');if(parent3){parent3.set('class','active');}else if(parent2){parent2.set('class','active');}else{a.set('class','active');}}});},createSubmenu:function(ul){var LIs=ul.getChildren('li');var offset=0;LIs.each(function(li){li.setStyles({position:'relative',display:'block',top:-offset,zIndex:1});offset+=li.getSize().y;var innerUl=li.getFirst('ul');if($defined(innerUl)){ul.getElements('ul').setStyle('display','none');if(ul==this.menu&&this.options.mode=='horizontal'){li.getElement('a').addClass('submenu-down');var y=li.getSize().y;this.options.link='cancel';li.store('animation',new Fx.Elements($$(innerUl,innerUl.getChildren('li')).setStyle('opacity',0),this.options));}else{li.getElement('a').addClass('submenu-left');var x=li.getSize().x-(this.rtl&&!Browser.Engine.trident?2:1)*li.getStyle('border-left-width').toInt();var y=-li.getStyle('border-bottom-width').toInt();this.options.link='chain';li.store('animation',new Fx.Elements($$(innerUl,innerUl.getChildren('li')).setStyle('opacity',0),this.options));offset=li.getSize().y+li.getPosition(this.menu).y;}
innerUl.setStyles({position:'absolute',opacity:0});ul.getElements('ul').setStyle('display','block');if(this.rtl){innerUl.setStyles({right:x,marginRight:-x});}else{innerUl.setStyles({left:x});}
this.createSubmenu(innerUl);if(this.options.clickToOpen){li.addEvent('mouseenter',function(){$clear(li.retrieve('closeDelay'));}.bind(this));li.getFirst('a').addEvent('click',function(e){e.stop();$clear(li.retrieve('closeDelay'));this.showChildList(li);}.bind(this));}else{li.addEvent('mouseenter',function(){$clear(li.retrieve('closeDelay'));li.store('openDelay',this.showChildList.delay(this.options.openDelay,this,li));}.bind(this));}
li.addEvent('mouseleave',function(){$clear(li.retrieve('openDelay'));li.store('closeDelay',this.hideChildList.delay(this.options.closeDelay,this,li));}.bind(this));}},this);},showChildList:function(li){var ul=li.getFirst('ul');var LIs=$$(ul.getChildren('li'));var animation=li.retrieve('animation');if(li.getParent('ul')!=this.menu||this.options.mode=='vertical'){animation.cancel();var anim={0:{opacity:1},1:{opacity:1}};if(this.rtl){anim[0]['marginRight']=0;}else{anim[0]['marginLeft']=0;}
animation.start(anim);var animobject={};}else{var animobject={0:{opacity:1}};}
LIs.each(function(innerli,i){animobject[i+1]={top:0,opacity:1};});li.setStyle('z-index',99);animation.start(animobject);},hideChildList:function(li){var animation=li.retrieve('animation');var ul=li.getFirst('ul');var LIs=$$(ul.getChildren('li'));var offset=0;var animobject={};LIs.each(function(innerli,i){animobject[i+1]={top:-offset,opacity:0};offset+=innerli.getSize().y;});li.setStyle('z-index',1);if(li.getParent('ul')!=this.menu||this.options.mode=='vertical'){animobject[1]=null;animation.cancel();animation.start(animobject);var anim={0:{opacity:0},1:{opacity:0}};if(this.rtl){anim[0]['marginRight']=-ul.getSize().x;}else{anim[0]['marginLeft']=-ul.getSize().x;}
animation.start(anim);}else{animobject[0]={opacity:0};animation.start(animobject);}}});new UvumiDropdown('listMenuRoot');
