var HelpBalloon=Class.create();HelpBalloon.prototype={initialize:function(A){this.options=Object.extend({hideTimeout:1000,name:"",sectorKey:"",position:"relative",positionX:0,positionY:0,height:"240px",width:"300px",altText:"",dataURL:null,title:"",content:"",duration:0.2,imageTR:"",imageTL:"",imageBR:"",imageBL:"",imageClose:"",backColor:"white",borderSize:"1px",borderColor:"#000000",paddingTop:0,paddingBottom:0,paddingRight:0,paddingLeft:0,method:"get"},A||{});if(this.options.imageTR!=""){this.options.backColor="";if(this.options.imageTL==""){this.options.imageTL=this.options.imageTR}if(this.options.imageBR==""){this.options.imageBR=this.options.imageTR}if(this.options.imageBL==""){this.options.imageBL=this.options.imageTR}}this._elements={container:null,inner:null,content:null,button:null,title:null,bgContainer:null};this._properties={id:"HelpBalloon_"+Object.genGUID(),balloons:[this.options.imageBR,this.options.imageBL,this.options.imageTR,this.options.imageTL],balloonStyle:{position:"absolute",borderStyle:"solid",borderWidth:this.options.borderSize,borderColor:this.options.borderColor,background:this.options.backColor,width:this.options.width,height:this.options.height,display:"none"},button:this.options.imageClose,visible:false,balloonCoords:null,innerDims:[parseInt(this.options.width)-this.options.paddingRight-this.options.paddingLeft,parseInt(this.options.height)-this.options.paddingTop-this.options.paddingBottom],pointerDims:[this.options.paddingLeft,this.options.paddingTop],outerDims:[0,0],innerMargin:0,buttonHeight:20,drawn:false,renderXY:[0,0]};for(var B=0;B<this._properties.balloons.length;B++){if(this._properties.balloons[B]!=""){var C=document.createElement("img");C.src=this._properties.balloons[B]}}this._elements.timeout=0;this._elements.container=document.createElement("div");this._elements.container._HelpBalloon=this},show:function(A){this.cancelTimeout();if(!this._properties.drawn){this._draw()}this._elements.container.style.zIndex=10000;this._reposition(A);this._hideOtherHelps();Effect.Appear(this._elements.container,{duration:this.options.duration,afterFinish:function(B){this._elements.container.setStyle("display","block");this._hideLowerElements()}.bindAsEventListener(this)});this._properties.visible=true;Event.observe(window,"resize",this._reposition.bindAsEventListener(this))},hide:function(){this.cancelTimeout();this._showLowerElements();this._elements.container.style.zIndex=9999;Effect.Fade(this._elements.container,{duration:this.options.duration});setTimeout(function(){this._elements.container.style.display="none"}.bind(this),this.options.duration*1000);this._properties.visible=false;Event.stopObserving(window,"resize",this._reposition.bindAsEventListener(this));return },hideTimeout:function(){if(this.options.hideTimeout!=0){var A=this.options.name+".hide()";this._elements.timeout=setTimeout(A,this.options.hideTimeout)}return },cancelTimeout:function(){if(this._elements.timeout!=0){clearTimeout(this._elements.timeout);this._elements.timeout=0
}return },_reposition:function(H){this._properties.balloonCoords={"x":0,"y":0,"x2":0,"y2":0};var E=0;var D=0;if(this.options.position=="relative"){this._properties.balloonCoords.x=Event.pointerX(H)+this.options.positionX;this._properties.balloonCoords.y=Event.pointerY(H)+this.options.positionY;var I=0;var G=document.body.clientHeight;var L=document.body.clientWidth;var A=document.body.scrollTop;var C=document.body.scrollLeft;var B=this._properties.balloonCoords.y-parseInt(this._elements.container.style.height);var K=this._properties.balloonCoords.x-parseInt(this._elements.container.style.width);var J=this._properties.balloonCoords.x+parseInt(this._elements.container.style.width);if(B>A){I+=2}if(J>L+C){if(K>C){I+=1}}switch(I){case 0:E=this._properties.balloonCoords.x;D=this._properties.balloonCoords.y;break;case 1:E=this._properties.balloonCoords.x-parseInt(this._elements.container.style.width);D=this._properties.balloonCoords.y;break;case 2:E=this._properties.balloonCoords.x;D=this._properties.balloonCoords.y-parseInt(this._elements.container.style.height);break;case 3:E=this._properties.balloonCoords.x-parseInt(this._elements.container.style.width);D=this._properties.balloonCoords.y-parseInt(this._elements.container.style.height);break}}else{this._properties.balloonCoords.x=this.options.positionX;this._properties.balloonCoords.y=this.options.positionY;E=this._properties.balloonCoords.x;D=this._properties.balloonCoords.y}this._elements.container.style.left=E+"px";this._elements.container.style.top=D+"px";if(this.options.backColor==""){this._elements.container.style.backgroundColor="transparent";this._elements.container.style.backgroundRepeat="no-repeat";this._elements.container.style.backgroundPosition="top left";if(Browser.isMSIE()&&this._properties.balloons[I].toLowerCase().indexOf(".png")>-1){var F=false;if(!this._elements.bgContainer){F=true;this._elements.bgContainer=document.createElement("div")}this._elements.bgContainer.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this._properties.balloons[I]+"', sizingMethod='crop')";this._elements.bgContainer.style.position="absolute";this._elements.bgContainer.style.left="0px";this._elements.bgContainer.style.top="0px";this._elements.bgContainer.style.width=this._elements.container.style.width;this._elements.bgContainer.style.height=this._elements.container.style.width;this._elements.bgContainer.style.zIndex=-1;F&&this._elements.container.appendChild(this._elements.bgContainer)}else{if(this._properties.balloons[I]!=""){this._elements.container.style.backgroundImage="url("+this._properties.balloons[I]+")"}}}if(this._elements.inner){this._elements.inner.style.left=(this._properties.pointerDims[0]+this._properties.innerMargin)+"px"}if(this._elements.inner){this._elements.inner.style.top=(this._properties.pointerDims[1]+this._properties.innerMargin)+"px"}},_draw:function(){Element.setStyle(this._elements.container,this._properties.balloonStyle);if(this.options.dataURL&&!this._properties.drawn){var A=new Ajax.Request(this.options.dataURL,{asynchronous:false,method:this.options.method});
var D=false;if(A.transport.responseXML){var B=A.transport.responseXML.getElementsByTagName("HelpBalloon")[0];if(B){xmlTitle=B.getElementsByTagName("title")[0];if(xmlTitle){this.options.title=xmlTitle.firstChild.nodeValue}xmlContent=B.getElementsByTagName("content")[0];if(xmlContent){this.options.content=xmlContent.firstChild.nodeValue}}else{D=true}}else{D=true}if(D){this.options.content=A.transport.responseText}}this._elements.inner=document.createElement("div");this._elements.inner.style.position="absolute";this._elements.inner.style.width=this._properties.innerDims[0]+"px";this._elements.inner.style.height=this._properties.innerDims[1]+"px";if(this.options.imageClose!=""){var F=null;if(Browser.isMSIE()&&this._properties.button.toLowerCase().indexOf(".png")>-1){var C=document.createElement("img");C.src=this._properties.button;this._properties.buttonHeight=C.height;F=document.createElement("div");F.style.width=this._properties.buttonHeight+"px";F.style.height=this._properties.buttonHeight+"px";F.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this._properties.button+"', sizingMethod='crop')"}else{F=document.createElement("img");F.src=this._properties.button;this._properties.buttonHeight=F.height;F.width=this._properties.buttonHeight;F.height=this._properties.buttonHeight}Event.observe(F,"click",this.hide.bindAsEventListener(this));F.style.cursor="pointer";F.title="";F.style.position="absolute";F.style.top="0px";F.style.left=(this._properties.innerDims[0]-this._properties.buttonHeight)+"px";this._elements.inner.appendChild(F)}var E=document.createElement("div");if(this.options.imageClose!=""){E.style.top=this._properties.buttonHeight+"px";E.style.height=(this._properties.innerDims[1]-this._properties.buttonHeight)+"px"}else{E.style.top="0px";E.style.height=(this._properties.innerDims[1])+"px"}E.style.width=this._properties.innerDims[0]+"px";E.style.overflow="auto";E.style.position="absolute";E.style.left="0px";E.style.fontFamily="verdana";E.style.fontSize="11px";E.style.fontWeight="normal";E.style.color="black";E.innerHTML=this.options.content;this._elements.inner.appendChild(E);this._elements.container.appendChild(this._elements.inner);document.getElementsByTagName("body")[0].appendChild(this._elements.container);this._properties.drawn=true;Event.observe(this._elements.container,"mouseover",this.cancelTimeout.bindAsEventListener(this));Event.observe(this._elements.container,"mouseout",this.hideTimeout.bindAsEventListener(this))},_getXY:function(D){var F=Position.cumulativeOffset(D);var E=F[1];var A=F[0];var B=A+parseInt(D.offsetWidth);var C=E+parseInt(D.offsetHeight);return{"x":A,"y":E,"x2":B,"y2":C}},_isChild:function(B){var A=15;do{if(B==this._elements.container){return true}B=B.parentNode}while(B&&A--);return false},_isOver:function(C){if(!this._properties.visible){return false}if(C==this._elements.container||this._isChild(C)){return false}var A=this._getXY(C);var B=this._getXY(this._elements.container);if((((A.x>=B.x&&A.x<=B.x2)||(A.x2>=B.x&&A.x2<=B.x2))&&((A.y>=B.y&&A.y<=B.y2)||(A.y2>=B.y&&A.y2<=B.y2)))){return true
}else{return false}},_showLowerElements:function(){var B=this._getWeirdAPIElements();for(var A=0;A<B.length;A++){if(this._isOver(B[A])){if(B[A].style.visibility!="visible"&&B[A].hiddenBy==this){B[A].style.visibility="visible";B[A].hiddenBy=null}}}},_hideLowerElements:function(){var B=this._getWeirdAPIElements();for(var A=0;A<B.length;A++){if(this._isOver(B[A])){if(B[A].style.visibility!="hidden"){B[A].style.visibility="hidden";B[A].hiddenBy=this}}}},_getWeirdAPIElements:function(){if(!document.all||(document.all&&navigator.userAgent.indexOf("MSIE 7")!=-1)){return[]}var E=["select","object"];var C=[];for(var B=0;B<E.length;B++){var D=document.getElementsByTagName(E[B]);for(var A=0;A<D.length;A++){C.push(D[A])}}return C},_hideOtherHelps:function(C){if(!C){C=window.event}var B=document.getElementsByTagName("div");for(var A=0;A<B.length;A++){if(B[A]._HelpBalloon&&B[A]._HelpBalloon._properties.visible&&(B[A]!=this._elements.container)&&(B[A]._HelpBalloon.options.sectorKey==this.options.sectorKey)){B[A]._HelpBalloon.hide(C)}}}}