if(jira===undefined){var jira={}}if(jira.widget===undefined){jira.widget={}}if(console===undefined){var console={};console.log=function(){}}jira.widget.MenuButton=function(J,B,F,K){K=K||["tr","br"];var O='<img src="'+F+'/images/throbber/wait.gif"/>';var G=this;var H=new YAHOO.widget.Overlay(J+"_wait",{constraintoviewport:true,visible:false,context:[J,K[0],K[1]]});H.setBody(O);H.render(document.body);H.element.className+=" jira-menubutton";H.linkedId=J;var D;this.reset=function(){D=H;G.madeAjaxCall=false};this.reset();var I=document.getElementById(J);var C=function(Q){YAHOO.util.Dom.addClass(Q.linkedId,"current");Q.align(K[0],K[1]);var S=YAHOO.util.Dom.getRegion(J);var R=YAHOO.util.Dom.getXY(Q.element);if(R[0]<0||R[1]<S.bottom){R[0]=Math.max(R[0],0);R[1]=Math.max(R[1],S.bottom);YAHOO.util.Dom.setXY(Q.element,R)}Q.show();if(!Q.resizer){Q.resizer=function(){if(Q.showing){window.setTimeout(function(){C(Q)},350)}};YAHOO.util.Event.addListener(window,"resize",Q.resizer)}Q.showing=true};var A=function(Q){YAHOO.util.Dom.removeClass(Q.linkedId,"current");Q.hide();YAHOO.util.Event.removeListener(window,"resize",Q.resizer);delete Q.resizer};var E=function(){if(jira.widget.MenuButton.current==D){A(jira.widget.MenuButton.current);jira.widget.MenuButton.current=null}else{if(jira.widget.MenuButton.current){A(jira.widget.MenuButton.current)}jira.widget.MenuButton.current=D;C(jira.widget.MenuButton.current)}};var N=function(){if(jira.widget.MenuButton.current==D){A(jira.widget.MenuButton.current);jira.widget.MenuButton.current=null}};var L=function(U){U=YAHOO.util.Event.getEvent(U);YAHOO.util.Event.stopEvent(U);if(!this.madeAjaxCall){this.madeAjaxCall=true;var W=function(Z){var a=document.createElement("div");var Y=document.createTextNode(Z);a.appendChild(Y);return a.innerHTML};var X=function(Z){var a=D;a.destroy();var b=new YAHOO.widget.Overlay(J+"_data",{constraintoviewport:true,visible:false,context:[J,K[0],K[1]]});b.setBody(Z);b.render(document.body);b.element.className+=" jira-menubutton";b.linkedId=J;if(jira.widget.MenuButton.current==a){A(jira.widget.MenuButton.current);jira.widget.MenuButton.current=b;C(jira.widget.MenuButton.current)}D=b;var Y=function(){};YAHOO.util.Event.addListener(D.element,"mouseup",Y);YAHOO.util.Event.removeListener(a.element,"mouseup",Y)};var R=function(a,Y,Z){var b=Y+"<br/>"+a.status+" - "+a.statusText;if(Z){b+="<br/>"+Z.toString()}X(b)};var Q={success:function(c){try{var d=c.responseText;var g=JSON.parse(d);var Y="<ul>";for(var Z=0;Z<g.length;Z++){var b=g[Z];if(b&&b.text){var a="";if(b.groupmarker){a=' class="groupmarker"'}Y+="<li"+a+">";Y+=(b.url)?'<a href="'+b.url+'">':"<span>";Y+=W(b.text);Y+=(b.url)?"</a>":"</span>";Y+="</li>"}}Y+="</ul>";X(Y)}catch(f){R(c,"Unable to interpret data sent back from the JIRA server.</br><ul><li>Perhaps the user's session has timed out?</li><li>Perhaps the user does not have JIRA 'use' permission?</li></ul>",f)}},failure:function(Y){R(Y,"Unable to contact the JIRA server")}};var S=(B.indexOf("?")==-1)?"?":"&";var T=B+S+"json=true&decorator=none";var V=function(){YAHOO.util.Connect.asyncRequest("GET",T,Q)};V()}E()};YAHOO.util.Event.addListener(I,"click",L,this,true);var P=function(Q){if(Q.keyCode==9){N()}};YAHOO.util.Event.addListener(I,"keydown",P,this,true);if(!jira.widget.MenuButton.registeredClickAway){jira.widget.MenuButton.registeredClickAway=false;var M=function(){if(jira.widget.MenuButton.current){A(jira.widget.MenuButton.current);jira.widget.MenuButton.current=null}};YAHOO.util.Event.addListener(document.body,"click",M)}jira.widget.MenuButton.menuButtonMap[J]=this};jira.widget.MenuButton.registeredClickAway=false;jira.widget.MenuButton.current=null;jira.widget.MenuButton.menuButtonMap={};jira.widget.MenuButton.invalidateMenuButton=function(A){var B=jira.widget.MenuButton.menuButtonMap[A];if(B){B.reset()}};
