perfUI.widgets.menu=function(A,C){this.menuClosed=true;if(typeof A=="string"){this.containerID=A;A=document.getElementById(A)}else{if(A.getAttribute("id")!=null){this.containerID=A.getAttribute("id")}else{var D=Math.ceil(Math.random()*(new Date()).getTime());A.setAttribute("id",D);this.containerID=D}}var B=C||null;if(!B){B=document.createElement("DIV");B.className="perfMenu"}this.getContainer=function(){return A};this.getElement=function(){return B};this.menuItems=[];this.drawMenu=function(){for(var E=0;E<this.menuItems.length;E++){perfUI.util.addEl(B,"DIV",{"noWrap":true,"style":"white-space:nowrap;"+(this.menuItems[E].style?this.menuItems[E].style:""),"innerHTML":this.menuItems[E].text,"onmouseover":this.itemMouseOver,"onmouseout":this.itemMouseOut,"class":this.menuItems[E].className||""});if(this.menuItems[E].onclick){YAHOO.util.Event.addListener(B.lastChild,"click",this.menuItems[E].onclick.fn,this.menuItems[E].onclick.obj,this.menuItems[E].onclick.scope)}}};this.addItems=function(E){if(typeof E=="object"){for(var F=0;F<E.length;F++){this.menuItems.push(E[F])}}else{this.menuItems.push(E)}};this.subscribe=new Function()};perfUI.widgets.menu.prototype.clearMenu=function(){var B=this.getElement();for(var A=0;A<B.childNodes.length;A++){YAHOO.util.Event.purgeElement(B.childNodes[A])}B.innerHTML=""};perfUI.widgets.menu.prototype.closeMenu=function(){this.clearMenu();if(this.menuClosed){return }this.menuClosed=true;if(this.getContainer().parentNode){this.getContainer().parentNode.removeChild(this.getElement())}document.onclick=null};perfUI.widgets.menu.prototype.adjustCoordinates=function(){};perfUI.widgets.menu.prototype.render=function(){};perfUI.widgets.menu.prototype.show=function(E){var B=this.getContainer();var C=this.getElement();var A=document.all?-2:0;var D=YAHOO.util.Dom.getXY(YAHOO.util.Event.getTarget(E));C.style.top=D[1]+11+A+"px";C.style.left=D[0]+A+"px";this.menuClosed=false;B.parentNode.appendChild(C);this.clearMenu();this.drawMenu();if((11+A+D[1]+C.offsetHeight)-document.body.scrollTop>YAHOO.util.Dom.getViewportHeight()){D[1]-=C.offsetHeight;C.style.top=D[1]+"px"}if((D[0]+A+C.offsetWidth)-document.body.scrollLeft>YAHOO.util.Dom.getViewportWidth()){D[0]-=C.offsetWidth;C.style.left=D[0]+11+A+"px"}YAHOO.util.Event.addListener(document,"click",this.closeMenu,this,true);YAHOO.util.Event.addListener(window,"resize",this.closeMenu,this,true);YAHOO.util.Event.stopPropagation(E);this.adjustCoordinates()};perfUI.widgets.menu.prototype.itemMouseOver=function(){this.style.color="#6464FF"};perfUI.widgets.menu.prototype.itemMouseOut=function(){this.style.color=""};perfUI.widgets.hoverMenu=function(A,B){perfUI.widgets.hoverMenu.superclass.constructor.call(this,A,B);this.stopTimer=true;this.timerLength=1500};YAHOO.extend(perfUI.widgets.hoverMenu,perfUI.widgets.menu);perfUI.widgets.hoverMenu.DDobjects={};perfUI.widgets.hoverMenu.prototype.render=function(){perfUI.widgets.hoverMenu.DDobjects[this.containerID]=this;YAHOO.util.Event.addListener(this.getContainer(),"mouseover",this.show,this,true)};perfUI.widgets.hoverMenu.prototype.show=function(A){if(!this.menuClosed){return }this.attachListeners();this.getContainer().className="header_over";perfUI.widgets.hoverMenu.superclass.show.call(this,A)};perfUI.widgets.hoverMenu.prototype.attachListeners=function(){var A=this.getElement();var B=this.getContainer();YAHOO.util.Event.addListener(A,"mouseover",this.onmouseover,this,true);YAHOO.util.Event.addListener(B,"mouseover",this.onmouseover,this,true);YAHOO.util.Event.addListener(A,"mouseout",this.onmouseout,this,true);YAHOO.util.Event.addListener(B,"mouseout",this.onmouseout,this,true)};perfUI.widgets.hoverMenu.prototype.onmouseover=function(A){this.stopTimer=true};perfUI.widgets.hoverMenu.prototype.onmouseout=function(B){var A=perfUI.widgets.hoverMenu.DDobjects[this.containerID];A.stopTimer=false;setTimeout("perfUI.widgets.hoverMenu.timer('"+this.containerID+"')",A.timerLength)};perfUI.widgets.hoverMenu.timer=function(A){var B=perfUI.widgets.hoverMenu.DDobjects[A];if(B&&!B.stopTimer){B.onTimerEnd()}};perfUI.widgets.hoverMenu.prototype.onTimerEnd=function(){this.onBeforeCloseMenu();if(!this.menuClosed){this.clearMenu();this.closeMenu()}};perfUI.widgets.hoverMenu.prototype.onBeforeCloseMenu=function(){this.getContainer().className="header_normal"};perfUI.widgets.headerMenu=function(A,B){var B=document.createElement("DIV");B.className="PH_header";perfUI.widgets.headerMenu.superclass.constructor.call(this,A,B);this.align="left";this.timerLength=0;this.minWidth=100};YAHOO.extend(perfUI.widgets.headerMenu,perfUI.widgets.hoverMenu);perfUI.widgets.headerMenu.prototype.show=function(F){if(!this.menuClosed){return }this.attachListeners();var A=this.getContainer();var C=this.getElement();A.className="PH_header_over";A.firstChild.className="PH_header_nested_over";this.menuClosed=false;C.style.visibility="hidden";A.parentNode.appendChild(C);this.clearMenu();this.drawMenu();var D=(document.all?C.offsetWidth:C.clientWidth+2)+10;if(D<this.minWidth){D=this.minWidth}var E=(document.all?A.offsetWidth:A.clientWidth+2);if(D<E){D=E-(document.all?8:16)}for(var B=0;B<C.childNodes.length;B++){C.childNodes[B].style.width=D+"px"}this.drawBorder();C.style.visibility="visible";YAHOO.util.Event.stopPropagation(F);this.adjustCoordinates()};perfUI.widgets.headerMenu.prototype.drawBorder=function(){var container=this.getContainer();var element=this.getElement();var containerRegion=YAHOO.util.Dom.getRegion(container);var IEoffset=(document.all?2:0);if(this.align=="left"){element.style.left=containerRegion.left-IEoffset;element.style.top=containerRegion.bottom-IEoffset;var elementRegion=YAHOO.util.Dom.getRegion(element);var div=document.createElement("DIV");div.className="PH_header_specialBorder";with(div.style){left=(containerRegion.right-containerRegion.left-1)+"px";top="-1px";width=(elementRegion.right-containerRegion.right)+"px"}}else{element.style.left=containerRegion.right-(document.all?element.offsetWidth:element.clientWidth+2)-IEoffset;element.style.top=containerRegion.bottom-IEoffset;var elementRegion=YAHOO.util.Dom.getRegion(element);var div=document.createElement("DIV");div.className="PH_header_specialBorder";with(div.style){left="-1px";top="-1px";width=(containerRegion.left-elementRegion.left)+"px"}}element.appendChild(div)};perfUI.widgets.headerMenu.prototype.addItem=function(B,C,A){this.menuItems.push({"text":"<div class='PH_headerMenu_img PH_headerMenu_img_"+B+"'></div><div class='PH_headerMenu_txt'>"+C+"</div><br clear=all>","className":"PH_headerMenu_row","onclick":{"fn":function(){top.location.href=A},"obj":x,"scope":false}})};perfUI.widgets.headerMenu.prototype.addSeparator=function(){this.menuItems.push({"text":"<div></div>","className":"PH_headerMenu_row_break"})};perfUI.widgets.headerMenu.prototype.itemMouseOver=function(){if(this.className=="PH_headerMenu_row_break"){return }this.className="PH_headerMenu_row_over"};perfUI.widgets.headerMenu.prototype.itemMouseOut=function(){if(this.className=="PH_headerMenu_row_break"){return }this.className="PH_headerMenu_row"};perfUI.widgets.headerMenu.prototype.onBeforeCloseMenu=function(){var A=this.getContainer();A.className="PH_header_normal";A.firstChild.className="PH_header_nested"}
