var jezMenuFx={initialize:function(element,options){this.setOptions({rootItemSelector:'li.level0',firstSubSelector:'ul.level1',deeperSubSelector:'ul.level1 ul',subItemSelector:'li.parent li',fxDuration:500,rootItemActiveCss:{},rootItemInactiveCss:{},rootItemActiveFx:{},rootItemInactiveFx:{},firstSubDirection:'both',firstSubActiveCss:{},firstSubInactiveCss:{},firstSubActiveFx:{transition:Fx.Transitions.expoIn},firstSubInactiveFx:{transition:Fx.Transitions.expoOut},deeperSubDirection:'both',deeperSubActiveCss:{},deeperSubInactiveCss:{},deeperSubActiveFx:{transition:Fx.Transitions.expoIn},deeperSubInactiveFx:{transition:Fx.Transitions.expoOut},subItemActiveCss:{},subItemInactiveCss:{},subItemActiveFx:{},subItemInactiveFx:{},skipFxFor:{'id':'current','class':'active'}},options);this.element=element;this.construct();},construct:function(){var rootItems=this.element.getElements(this.options.rootItemSelector);var subItems=this.element.getElements(this.options.subItemSelector);var subMenus={};subMenus.first=this.element.getElements(this.options.firstSubSelector);subMenus.deeper=this.element.getElements(this.options.deeperSubSelector);$extend(this.options.rootItemActiveFx,{duration:this.options.fxDuration});$extend(this.options.rootItemInactiveFx,{duration:this.options.fxDuration});new jezFxStyles(rootItems,{activeCss:this.options.rootItemActiveCss,inactiveCss:this.options.rootItemInactiveCss,activeFx:this.options.rootItemActiveFx,inactiveFx:this.options.rootItemInactiveFx});$extend(this.options.subItemActiveFx,{duration:this.options.fxDuration});$extend(this.options.subItemInactiveFx,{duration:this.options.fxDuration});new jezFxStyles(subItems,{activeCss:this.options.subItemActiveCss,inactiveCss:this.options.subItemInactiveCss,activeFx:this.options.subItemActiveFx,inactiveFx:this.options.subItemInactiveFx});$each(subMenus,function(data,type){for(var i=0;i<data.length;i++){if(this.options[type+'SubDirection']!='manual'){switch(this.options[type+'SubDirection']){case'vertical':$extend(this.options[type+'SubActiveCss'],{'height':data[i].offsetHeight-(parseInt(data[i].getStyle('border-top'))+parseInt(data[i].getStyle('padding-top'))+parseInt(data[i].getStyle('padding-bottom'))+parseInt(data[i].getStyle('border-bottom')))});$extend(this.options[type+'SubInactiveCss'],{'height':0});break;case'horizontal':$extend(this.options[type+'SubActiveCss'],{'width':data[i].offsetWidth-(parseInt(data[i].getStyle('border-left'))+parseInt(data[i].getStyle('padding-left'))+parseInt(data[i].getStyle('padding-right'))+parseInt(data[i].getStyle('border-right')))});$extend(this.options[type+'SubInactiveCss'],{'width':0});break;case'both':default:$extend(this.options[type+'SubActiveCss'],{'width':data[i].offsetWidth-(parseInt(data[i].getStyle('border-left'))+parseInt(data[i].getStyle('padding-left'))+parseInt(data[i].getStyle('padding-right'))+parseInt(data[i].getStyle('border-right'))),'height':data[i].offsetHeight-(parseInt(data[i].getStyle('border-top'))+parseInt(data[i].getStyle('padding-top'))+parseInt(data[i].getStyle('padding-bottom'))+parseInt(data[i].getStyle('border-bottom')))});$extend(this.options[type+'SubInactiveCss'],{'width':0,'height':0});break;}}
$extend(this.options[type+'SubActiveFx'],{duration:this.options.fxDuration});$extend(this.options[type+'SubInactiveFx'],{duration:this.options.fxDuration});var subMenu=new jezFxStyle(data[i],{activeCss:this.options[type+'SubActiveCss'],activeFx:this.options[type+'SubActiveFx'],onActivate:function(){this.setStyles({'left':'auto','overflow':'hidden'});}.bind(data[i]),onActivated:function(){this.setStyle('overflow','visible');}.bind(data[i]),inactiveCss:this.options[type+'SubInactiveCss'],inactiveFx:this.options[type+'SubInactiveFx'],onDeactivate:function(){this.setStyles({'left':'auto','overflow':'hidden'});}.bind(data[i]),onDeactivated:function(){this.setStyle('left','-999em');}.bind(data[i])},data[i].getParent());}},this);}};jezMenuFx=new Class(jezMenuFx);jezMenuFx.implement(new Options);