var _gaButtonList=new Array();var _goActiveButton=undefined;function Button(P,N,F,G,L,H,K,E,J,O,B,I,D,Q,C,A){if(document.getElementById(P)!=null){alert("ID value of '"+P+"' passed to Button constructor is not unique!\n\nCannot create new Button, please use a unique ID.");return null}this.ID=P;this.Parent=N;this.Template=(((G!=null)&&(G!=undefined))?G:_gtTemplateDefault);this.Width=L;this.Height=H;this.ButtonType=F;this.ButtonImage=K;this.ButtonText=E;this.SelectedText=J;this.ButtonSelected=O;this.ButtonEnabled=B;this.ClickHandler=I;this.Debug=D;this.ZIndex=Q;this.DisabledIcon="";this.ImageWidth=0;this.ImageHeight=0;this.ImageTop=0;this.ImageLeft=0;this.ImageOffX=(C==undefined?0:C);this.ImageOffY=(A==undefined?0:A);this.BuildButton();this.Left=getAbsLeft(this.ButtonObject.id);this.Top=getAbsTop(this.ButtonObject.id);var M=_gaButtonList.length;_gaButtonList[M]=this;this.ButtonObject.onmousedown=this.onmousedown;this.ButtonObject.onmouseover=this.onmouseover;this.ButtonObject.onmouseout=this.onmouseout}Button.prototype.GetButtonFromID=Button_GetFromID;Button.prototype.SetButtonEnabled=Button_SetButtonEnabled;Button.prototype.onmousedown=Button_MouseDown;Button.prototype.onmouseover=Button_MouseOver;Button.prototype.onmouseout=Button_MouseOut;Button.prototype.DebugButton=Button_DebugAction;Button.prototype.BuildButton=Button_BuildButton;function Button_BuildButton(){var G="position:relative;width:"+this.Width+"px;height:"+this.Height+"px;background-color:"+this.Template.BckClr+";z-index:"+this.ZIndex+";cursor:hand;";var D="";var F="";if(this.ButtonSelected==false){D="position:relative;margin:0px;padding:0px;top:0px;left:0px;width:"+this.Width+"px;height:"+this.Height+"px;border-top:1px solid "+this.Template.BdrLgt+";border-left:1px solid "+this.Template.BdrLgt+";border-right:1px solid "+this.Template.BdrDrk+";border-bottom:1px solid "+this.Template.BdrDrk+";text-align:center;vertical-align:center;";F="position:relative;margin:0px;padding:0px;top:0px;left:0px;width:"+(this.Width-2)+"px;height:"+(this.Height-2)+"px;border-top:1px solid "+this.Template.BckClr+";border-left:1px solid "+this.Template.BckClr+";border-right:1px solid "+this.Template.BdrShd+";border-bottom:1px solid "+this.Template.BdrShd+";text-align:center;vertical-align:center;"}else{D="position:relative;margin:0px;padding:0px;top:0px;left:0px;width:"+this.Width+"px;height:"+this.Height+"px;border-top:1px solid "+this.Template.BdrDrk+";border-left:1px solid "+this.Template.BdrDrk+";border-right:1px solid "+this.Template.BdrLgt+";border-bottom:1px solid "+this.Template.BdrLgt+";text-align:center;vertical-align:center;";F="position:relative;margin:0px;padding:0px;top:0px;left:0px;width:"+(this.Width-2)+"px;height:"+(this.Height-2)+"px;border-top:1px solid "+this.Template.BdrShd+";border-left:1px solid "+this.Template.BdrShd+";border-right:1px solid "+this.Template.BckClr+";border-bottom:1px solid "+this.Template.BckClr+";text-align:center;vertical-align:center;"}var E="images/spacer.gif";if(this.ButtonImage!=""){var A=this.ButtonImage.indexOf(".gif");if(A>-1){this.DisabledIcon=this.ButtonImage.substr(0,A)+"_dis.gif"}if(this.ButtonEnabled){E=this.ButtonImage}else{E=this.DisabledIcon}}this.ImageHandle=undefined;if(E!=""){var C=new Image();C.src=E;this.ImageWidth=C.width;this.ImageHeight=C.height;this.ImageTop=Math.round(((this.Height-4)/2)-(this.ImageHeight/2))+this.ImageOffY;this.ImageLeft=Math.round(((this.Width-4)/2)-(this.ImageWidth/2))+this.ImageOffX;if(this.ImageTop>this.ImageOffY){this.ImageTop=this.ImageOffY}if(this.ImageLeft>this.ImageOffX){this.ImageLeft=this.ImageOffX}alert("Button:ImageSrc=["+E+"]\nButton:ImageTop=["+this.ImageTop+"]\nButton:ImageLeft=["+this.ImageLeft+"]\nButton:ImageOffY=["+this.ImageOffY+"]\nButton:ImageOffX=["+this.ImageOffX+"]\nButton:ImageWidth=["+this.ImageWidth+"]\nButton:ImageHeight=["+this.ImageHeight+"]\nButton:Width=["+this.Width+"]\nButton:Height=["+this.Height+"]");var B=(this.ButtonSelected?this.SelectedText:this.ButtonText);if(BrowserDetect.browser=="Explorer"){this.ImageObject=document.createElement('<img id="JSBtnImg_'+this.ID+'" src="'+E+'" border=0 alt="'+B+'">');this.ImageHandle=document.createElement('<div id="JSBtnIHO_'+this.ID+'" style="position:relative;top:'+this.ImageTop+"px;left:"+this.ImageLeft+"px;width:"+this.ImageWidth+"px;height:"+this.ImageHeight+';">')}else{this.ImageObject=document.createElement("img");this.ImageObject.setAttribute("id","JSBtnImg_"+this.ID);this.ImageObject.setAttribute("src",E);this.ImageObject.setAttribute("border","0");this.ImageObject.setAttribute("alt",B);this.ImageHandle=document.createElement("div");this.ImageHandle.setAttribute("id","JSBtnIHO_"+this.ID);this.ImageHandle.setAttribute("style","position:relative;top:"+this.ImageTop+"px;left:"+this.ImageLeft+"px;width:"+this.ImageWidth+"px;height:"+this.ImageHeight+";")}this.ImageHandle.appendChild(this.ImageObject)}if(BrowserDetect.browser=="Explorer"){this.ButtonObject=document.createElement('<div id="'+this.ID+'" style="'+G+'" onclick="Button_MouseClick( this );">');this.OuterFrame=document.createElement('<div id="BtnOut_'+this.ID+'" style="'+D+'">');this.InnerFrame=document.createElement('<div id="BtnInr_'+this.ID+'" style="'+F+'">')}else{this.ButtonObject=document.createElement("div");this.ButtonObject.setAttribute("id",this.ID);this.ButtonObject.setAttribute("style",G);this.ButtonObject.setAttribute("onclick","Button_MouseClick( this );");this.OuterFrame=document.createElement("div");this.OuterFrame.setAttribute("id","BtnOut_"+this.ID);this.OuterFrame.setAttribute("style",D);this.InnerFrame=document.createElement("div");this.InnerFrame.setAttribute("id","BtnInr_"+this.ID);this.InnerFrame.setAttribute("style",F)}if(this.ImageHandle!=undefined){this.InnerFrame.appendChild(this.ImageHandle)}this.OuterFrame.appendChild(this.InnerFrame);this.ButtonObject.appendChild(this.OuterFrame);if(this.Parent!=null){this.Parent.appendChild(this.ButtonObject)}}function Button_DebugAction(sDbgStr){if(this.Debug!=null){if(this.Debug!=""){var oFld=document.getElementById(this.Debug);if((oFld==null)||(oFld==undefined)){oFld=eval("document.forms[0]."+this.Debug)}if((oFld!=null)&&(oFld!=undefined)){oFld.value=sDbgStr+"\n"+oFld.value}}}}function Button_GetFromID(A){var C=null;for(var B=0;B<_gaButtonList.length;B++){C=_gaButtonList[B];if(C.ID==A){break}}return C}function Button_MouseDown(A){var B=Button_GetFromID(this.id);if((B!=null)&&(B!=undefined)){B.DebugButton("MouseDown: ID=["+this.id+"]");if((B.ButtonEnabled)&&(B.ButtonSelected==false)){StopEvent(A);_goActiveButton=B;Button_RenderSelected(B);if(B.Top==-1){B.Top=getAbsTop(this.id)}if(B.Left==-1){B.Left=getAbsLeft(this.id)}document.onmousemove=Button_MouseMove;document.onmouseup=Button_MouseUp}}}function Button_MouseMove(B){B=(B?B:event);StopEvent();var C=(B.pageX?B.pageX:B.clientX)+document.body.scrollLeft;var A=(B.pageY?B.pageY:B.clientY)+document.body.scrollTop;var D="";if(((C>=_goActiveButton.Left)&&(C<=(_goActiveButton.Left+_goActiveButton.Width)))&&((A>=_goActiveButton.Top)&&(A<=(_goActiveButton.Top+_goActiveButton.Height)))){Button_RenderSelected(_goActiveButton);D="Over"}else{Button_RenderUnselected(_goActiveButton);D="Out"}_goActiveButton.DebugButton("MouseMove: ID=["+_goActiveButton.ID+"] XPos=["+C+"] YPos=["+A+"] State=["+D+"]")}function Button_MouseUp(A){var B=_goActiveButton;if((B!=null)&&(B!=undefined)){document.onmousemove=null;document.onmouseup=null;if((B.ButtonType=="click")&&(B.ButtonEnabled==true)){Button_RenderUnselected(B)}_goActiveButton=undefined;B.DebugButton("MouseUp: ID=["+B.ID+"]")}}function Button_MouseOver(A){var B=Button_GetFromID(this.id);if((B!=null)&&(B!=undefined)){if(B.ButtonEnabled==true){B.ButtonObject.style.backgroundColor=B.Template.OvrClr}}}function Button_MouseOut(A){var B=Button_GetFromID(this.id);if((B!=null)&&(B!=undefined)){if((B.ButtonSelected==false)&&(B.ButtonEnabled==true)){B.ButtonObject.style.backgroundColor=B.Template.BckClr}}}function Button_MouseClick(oDiv){var oBtn=Button_GetFromID(oDiv.id);if((oBtn!=null)&&(oBtn!=undefined)){if(oBtn.ButtonEnabled==true){if(oBtn.ButtonType=="toggle"){oBtn.ButtonSelected=(oBtn.ButtonSelected==true?false:true);if(oBtn.ButtonSelected){Button_RenderSelected(oBtn)}else{Button_RenderUnselected(oBtn)}oBtn.ImageObject.setAttribute("alt",(oBtn.ButtonSelected?oBtn.SelectedText:oBtn.ButtonText))}oBtn.DebugButton("MouseClick: ID=["+oBtn.ID+"] ButtonEnabled=["+oBtn.ButtonEnabled+"] ButtonType=["+oBtn.ButtonType+"] Selected=["+oBtn.ButtonSelected+"] ClickHandler=["+oBtn.ClickHandler+"]");if((oBtn.ClickHandler!=null)&&(oBtn.ClickHandler!=undefined)&&(oBtn.ClickHandler!="")){eval(oBtn.ClickHandler+"('"+oBtn.ID+"')")}}}}function Button_SetButtonEnabled(A){this.ButtonEnabled=A;var B=document.getElementById("JSBtnImg_"+this.ID);if((B!=null)&&(B!=undefined)){B.src=(A==true?this.ButtonImage:this.DisabledIcon)}}function Button_RenderSelected(A){A.OuterFrame.style.borderTop="1px solid "+A.Template.BdrDrk;A.OuterFrame.style.borderLeft="1px solid "+A.Template.BdrDrk;A.OuterFrame.style.borderRight="1px solid "+A.Template.BdrLgt;A.OuterFrame.style.borderBottom="1px solid "+A.Template.BdrLgt;A.InnerFrame.style.borderTop="1px solid "+A.Template.BdrShd;A.InnerFrame.style.borderLeft="1px solid "+A.Template.BdrShd;A.InnerFrame.style.borderRight="1px solid "+A.Template.BckClr;A.InnerFrame.style.borderBottom="1px solid "+A.Template.BckClr;A.ImageHandle.style.top=(A.ImageTop+1)+"px";A.ImageHandle.style.left=(A.ImageLeft+1)+"px";A.ButtonObject.style.backgroundColor=A.Template.OvrClr}function Button_RenderUnselected(B){B.OuterFrame.style.borderTop="1px solid "+B.Template.BdrLgt;B.OuterFrame.style.borderLeft="1px solid "+B.Template.BdrLgt;B.OuterFrame.style.borderRight="1px solid "+B.Template.BdrDrk;B.OuterFrame.style.borderBottom="1px solid "+B.Template.BdrDrk;B.InnerFrame.style.borderTop="1px solid "+B.Template.BckClr;B.InnerFrame.style.borderLeft="1px solid "+B.Template.BckClr;B.InnerFrame.style.borderRight="1px solid "+B.Template.BdrShd;B.InnerFrame.style.borderBottom="1px solid "+B.Template.BdrShd;var A=Number(NumericOnly(B.ImageHandle.style.top,false))-1;var C=Number(NumericOnly(B.ImageHandle.style.left,false))-1;B.ImageHandle.style.top=B.ImageTop+"px";B.ImageHandle.style.left=B.ImageLeft+"px";B.ButtonObject.style.backgroundColor=B.Template.BckClr}