var CSSMenu={_zIndex:500,setStyle:function(oElement,sClass){if(oElement.bNoClass) return;if((sClass=='hover'||sClass=='active')&&(oElement.className==oElement.sClassNameDefault||oElement.className=='normal'||oElement.className=='hover')){oElement.className=sClass;if(oElement.oCell){if(oElement.sStyleActive!=null){oElement.oCell.setAttribute('style',oElement.sStyleActive);oElement.oCell.style.cssText=oElement.sStyleActive;} if(oElement.sClassNameActive!=null) oElement.oCell.className=oElement.sClassNameActive;}}else if(sClass=='normal'&&(oElement.className=='hover'||oElement.className=='active')){oElement.className=(oElement.sClassNameDefault==''?sClass:oElement.sClassNameDefault);if(oElement.oCell){if(oElement.sStyleNormal!=null){oElement.oCell.setAttribute('style',oElement.sStyleNormal);oElement.oCell.style.cssText=oElement.sStyleNormal;} if(oElement.sClassNameNormal!=null) oElement.oCell.className=oElement.sClassNameNormal;}}},e_onItemClick:function(e){if(this.sMenuID&&!CSSMenu.isMenuOpen(this.sMenuID)){if(CSSMenu.oOpenMenu!=null&&CSSMenu.oOpenMenu.element!=this) window.clearTimeout(CSSMenu.oOpenMenu.timeout);CSSMenu.oOpenMenu=null;CSSMenu.openMenu(this);e.stopPropagation();return false;} return true;},e_onItemOver:function(e){CSSMenu.setStyle(this,'hover');if(CSSMenu.oOpenMenu!=null&&CSSMenu.oOpenMenu.element!=this) window.clearTimeout(CSSMenu.oOpenMenu.timeout);CSSMenu.oOpenMenu={timeout:window.setTimeout('CSSMenu.openMenu( CSSMenu.oOpenMenu.element );',125),element:this};if(e&&e.stopPropagation) e.stopPropagation();else if(e) e.cancelBubble=true;else if(window.event) window.event.cancelBubble=true;},e_onItemOut:function(){if(this.className!='active') CSSMenu.setStyle(this,'normal');CSSMenu.closeMenu();},createLevel:function(aParams,nMenuID,nLevelsCreated,sClassName){var nMaxLevel=nLevelsCreated;var oParentData=CSSMenuData[nMenuID];if(oParentData==null||(oParentData&&oParentData.c!=null&&oParentData.c.length<=aParams.maxItems)){if(oParentData&&oParentData.childClassName!=null) sClassName=oParentData.childClassName;var oDiv=document.getElementById(aParams.prefix+'c'+nMenuID);var bCreate=(oDiv==null);if(bCreate&&oParentData==null) return nMaxLevel;nMaxLevel=++nLevelsCreated;if(bCreate){oDiv=document.createElement('div');oDiv.setAttribute('id',aParams.prefix+'c'+nMenuID);oDiv.className=sClassName;oDiv.style.visibility='hidden';oDiv.style.zIndex=CSSMenu._zIndex;oDiv.style.position='absolute';oDiv.style.top='-500px';oDiv.style.left='-500px';} if(aParams.createLevel==null){if(oParentData){var oList=document.createElement('ul');var nFound=0;for(var i=0,l=oParentData.c.length;i=0;j--){if(oItemNode.childNodes[j].tagName){oItemNode.oCell=oItemNode.childNodes[j];break;}}} nFound++;this.initMenuItem(aParams,oItemNode,oChildData,nMenuID);if(oChildData.c!=null&&nLevelsCreated0){var oSubList=document.createElement('ul');for(var k=0,sl=oChildData.c.length;knMaxLevel) nMaxLevel=nLevel;}}} if(bCreate){oDiv.appendChild(oList);}else{this.initMenuItem(aParams,oDiv,null,nMenuID);}}else if(oDiv){this.initMenuItem(aParams,oDiv,null,nMenuID);}}else{var result=aParams.createLevel.call(this,aParams,oDiv,oParentData,nLevelsCreated,sClassName);if(result>0&&result>nMaxLevel) nMaxLevel=result;} if(bCreate) this.oSubMenus.appendChild(oDiv);} return nMaxLevel;},createMenuItem:function(aParams,oData,nLevelsCreated){var oSpan=document.createElement('span');if(oData.image!=null){var oImage=document.createElement('img');oImage.setAttribute('src',oData.image);oImage.setAttribute('border',0);oSpan.appendChild(oImage);}else{oSpan.appendChild(document.createTextNode(oData.n));if(oData.count!=null){oSpan.appendChild(document.createTextNode(' '));var oCount=document.createElement('span');oCount.className='count';oCount.appendChild(document.createTextNode('('+oData.count+')'));oSpan.appendChild(oCount);}} var oLink=document.createElement('a');oLink.setAttribute('href',oData.u);if(oData.t!=null) oLink.setAttribute('target',oData.t=='lightbox'?'_blank':oData.t);if(oData.c!=null&&oData.c.length<=aParams.maxItems&&nLevelsCreated=0;i--){var oNode=oParentNode.childNodes[i];var sID=(''+oNode.id);if(sID!=''&&(sID.indexOf(aParams.id)>=0||sID.indexOf(aParams.prefix)>=0)){var nID=sID.substring(sID.lastIndexOf('_')+1);var oData=CSSMenuData[nID];if(oData==null){var sChildID=sID.replace(/_(\d+)$/,'_c$1');var sub=document.getElementById(sChildID);if(sub==null) continue;} var nLevel=this.createLevel(aParams,nID,nLevelsCreated,aParams.prefix+'sub');if(nLevel<0) break;oNode.sParentID='';oNode.sMenuID=(aParams.prefix+'c'+nID);oNode.onclick=this.e_onItemClick;oNode.onmouseover=this.e_onItemOver;oNode.onmouseout=this.e_onItemOut;oNode.sDirection=aParams.direction;oNode.sEdge=aParams.edge;oNode.oBounds=aParams.bounds;oNode.sAlign=aParams.align;oNode.nOffsetX=(nLevelsCreated==0&&aParams.firstOffsetX!=null?aParams.firstOffsetX:aParams.offsetX);oNode.nOffsetY=(nLevelsCreated==0&&aParams.firstOffsetY!=null?aParams.firstOffsetY:aParams.offsetY);oNode.sWidth=(nLevelsCreated==0&&aParams.firstWidth!=null?aParams.firstWidth:aParams.width);oNode.sAnimation=(nLevelsCreated==0&&aParams.firstAnimation!=null?aParams.firstAnimation:aParams.animation);oNode.oCell=null;for(var j=oNode.childNodes.length-1;j>=0;j--){if(oNode.childNodes[j].tagName){oNode.oCell=oNode.childNodes[j];break;}} if(oData){if(oData.styleActive!=null){oNode.sStyleNormal=oData.style;oNode.sStyleActive=oData.styleActive;} if(oData.classNameActive!=null){oNode.sClassNameNormal=oData.className;oNode.sClassNameActive=oData.classNameActive;}} oNode.sClassNameDefault=oNode.className;if(oData&&aParams.open!=''&&aParams.open==oNode.className&&oData.c) this.oOpenMenuNode=oNode;if(nLevel>nMaxLevels) nMaxLevels=nLevel;}else if(oNode.hasChildNodes()){var nLevel=this.initMenuItems(aParams,oNode,nLevelsCreated);if(nLevel>nMaxLevels) nMaxLevels=nLevel;}} return nMaxLevels;},init:function(aParams){if(window.CSSMenuData!=null&&document.getElementById!=null&&document.createElement!=null&&document.createTextNode!=null){if(aParams==null) aParams={id:'cssmenu'};if(aParams.id==null) aParams.id='cssmenu';aParams.prefix=(aParams.prefix==null?(aParams.id+'_'):aParams.prefix);aParams.offsetX=(aParams.offsetX==null?0:aParams.offsetX);aParams.offsetY=(aParams.offsetY==null?0:aParams.offsetY);aParams.direction=(aParams.direction==null?(aParams.vertical==true?'right':'down'):aParams.direction);aParams.align=(aParams.align==null?'left':aParams.align);aParams.bounds=(aParams.bounds==null?null:document.getElementById(aParams.bounds));aParams.edge=(aParams.edge==null?(aParams.bounds?'move':'hide'):aParams.edge);aParams.maxItems=(aParams.maxItems==null?99:aParams.maxItems);aParams.maxLevels=(aParams.maxLevels==null?99:aParams.maxLevels);this.aOpenMenus=[];this.oSubMenus=document.getElementById(aParams.prefix+'submenus');if(this.oSubMenus==null){this.oSubMenus=document.createElement('div');this.oSubMenus.setAttribute('id',aParams.prefix+'submenus');this.oSubMenus.setAttribute('class','reset');document.body.appendChild(this.oSubMenus);} var oContainer=document.getElementById(aParams.id);if(oContainer!=null&&oContainer.childNodes!=null){oContainer.aParams=aParams;this.initMenuItems(aParams,oContainer,0);} if(this.oOpenMenuNode) this.openMenu(this.oOpenMenuNode);}},initMultiple:function(){if(window.CSSMenuConfig){for(var i=0;i=0;i--){try{if(this.aOpenMenus[i]==sMenuID) return true;}catch(e){}} return false;},closeMenu:function(){if(this.nCloseMenu!=null) window.clearTimeout(this.nCloseMenu);if(this.oOpenMenu!=null) window.clearTimeout(this.oOpenMenu.timeout);this.nCloseMenu=setTimeout('CSSMenu.openMenu();',500);},openMenu:function(oParentItem){if(this.nCloseMenu!=null) window.clearTimeout(this.nCloseMenu);var sParentID=(oParentItem==null?null:oParentItem.sParentID);var sOpenID=(oParentItem==null?null:oParentItem.sMenuID);var i=this.aOpenMenus.length-1;var bAlreadyOpen=false;for(;i>=0;i--){try{if(this.aOpenMenus[i]==sOpenID){bAlreadyOpen=true;break;}else if(this.aOpenMenus[i]!=sParentID){var oSubMenu=document.getElementById(this.aOpenMenus[i]);if(oSubMenu!=null){oSubMenu.style.visibility='hidden';if(oSubMenu.oParentItem!=null) this.setStyle(oSubMenu.oParentItem,'normal');oSubMenu.style.left='-500px';oSubMenu.style.top='-500px';} var oIFrame=this.getIFrame(i);if(oIFrame!=null) oIFrame.style.visibility='hidden';}else{break;}}catch(e){}} this.aOpenMenus.splice(i+1,this.aOpenMenus.length);if(sOpenID!=null&&!bAlreadyOpen){var oSubMenu=document.getElementById(sOpenID);if(oSubMenu!=null){var aPosition=this.getPosition(oParentItem);switch(oParentItem.sWidth){case'match':oSubMenu.style.width=oParentItem.offsetWidth+'px';break;} switch(oParentItem.sDirection){case'up':aPosition[1]-=oSubMenu.offsetHeight;if(oParentItem.sAlign=='right') aPosition[0]+=(oParentItem.offsetWidth-oSubMenu.offsetWidth);else if(oParentItem.sAlign=='center') aPosition[0]+=(oParentItem.offsetWidth-oSubMenu.offsetWidth)/2;break;case'down':aPosition[1]+=oParentItem.offsetHeight;if(oParentItem.sAlign=='right') aPosition[0]+=(oParentItem.offsetWidth-oSubMenu.offsetWidth);else if(oParentItem.sAlign=='center') aPosition[0]+=(oParentItem.offsetWidth-oSubMenu.offsetWidth)/2;else if(oParentItem.sAlign=='spread') aPosition[0]=(document.body.clientWidth-oSubMenu.offsetWidth)/2;break;case'left':aPosition[0]-=oSubMenu.offsetWidth;break;case'right':aPosition[0]+=oParentItem.offsetWidth;break;} var x=(aPosition[0]+oParentItem.nOffsetX);var y=(aPosition[1]+oParentItem.nOffsetY);var aCoords=this.getCoords(oParentItem.oBounds);var bUseIFrame=true;if((x+oSubMenu.offsetWidth)>aCoords[2]){switch(oParentItem.sEdge){case'move':x-=(x+oSubMenu.offsetWidth-aCoords[2]);break;default:x=-1;break;}} if(x>=0&&y>=0&&x>=aCoords[0]&&y>=aCoords[1]&&(x+oSubMenu.offsetWidth)<=aCoords[2]){oSubMenu.style.zIndex=this._zIndex+this.aOpenMenus.length;oSubMenu.style.left=x+'px';oSubMenu.style.top=y+'px';oSubMenu.style.visibility='';if(oParentItem.sAnimation&&window.jQuery){bUseIFrame=false;switch(oParentItem.sAnimation){case'slide':switch(oParentItem.sDirection){case'up':if(oSubMenu.oAnimation==null) oSubMenu.oAnimation={height:$(oSubMenu).height(),top:y};$(oSubMenu).css({overflow:'hidden',height:'1px',top:y+oSubMenu.offsetHeight+'px'}).animate({height:oSubMenu.oAnimation.height+'px',top:oSubMenu.oAnimation.top+'px'},'normal','swing',function(){$(this).css({overflow:'visible',height:'auto'});this.oAnimation=null;});break;case'down':$(oSubMenu).hide().slideDown();break;case'right':if(oSubMenu.oAnimation==null) oSubMenu.oAnimation=$(oSubMenu).wrapInner('
').children('div').get(0);if(oSubMenu.oAnimation.nWidth==null) oSubMenu.oAnimation.nWidth=$(oSubMenu).width();var width=oSubMenu.oAnimation.nWidth;$(oSubMenu.oAnimation).width(width);$(oSubMenu).css({overflow:'hidden',width:'1px'}).animate({width:width+'px'},'normal','swing',function(){$(this).css({overflow:'visible',width:width+'px'});$(this.oAnimation).width(width);this.oAnimation.nWidth=null;});break;case'left':if(oSubMenu.oAnimation==null) oSubMenu.oAnimation=$(oSubMenu).wrapInner('
').children('div').get(0);if(oSubMenu.oAnimation.nWidth==null) oSubMenu.oAnimation.nWidth=$(oSubMenu).width();var width=oSubMenu.oAnimation.nWidth;$(oSubMenu.oAnimation).width(width);$(oSubMenu).css({overflow:'hidden',width:'1px',left:x+oSubMenu.offsetWidth+'px'}).animate({width:width+'px',left:x+'px'},'normal','swing',function(){$(this).css({overflow:'visible',width:width+'px',left:x+'px'});$(this.oAnimation).width(width);this.oAnimation.nWidth=null;});break;} break;case'fade':$(oSubMenu).hide().fadeIn();break;}}} this.aOpenMenus.push(sOpenID);oSubMenu.oParentItem=oParentItem;this.setStyle(oParentItem,'active');if(bUseIFrame){for(var i=this.aOpenMenus.length-1;i>=0;i--){var oMenu=document.getElementById(this.aOpenMenus[i]);if(oMenu!=null&&oMenu.style.visibility!='hidden'){var oIFrame=this.getIFrame(i);if(oIFrame!=null){aPosition=this.getPosition(oMenu);oIFrame.style.left=aPosition[0]+'px';oIFrame.style.top=aPosition[1]+'px';oIFrame.style.width=oMenu.offsetWidth+'px';oIFrame.style.height=oMenu.offsetHeight+'px';oIFrame.style.visibility='';}}}}}} if(oParentItem==null&&this.aOpenMenus.length==0&&this.oOpenMenuNode) this.openMenu(this.oOpenMenuNode);}};if(window.CSSMenuConfig) CSSMenu.initWhenReady();