var _ERROR_MESSAGE="Oops.. there was a problem with your request.<br /><br />Please try again.<br /><br /><em>Click anywhere to close.</em>";var _RESIZE_DURATION=100;var _INITIAL_WIDTH=400;var _INITIAL_HEIGHT=200;var _CONTENTS_WIDTH=500;var _CONTENTS_HEIGHT=400;var _DEF_CONTENTS_WIDTH=500;var _DEF_CONTENTS_HEIGHT=400;var _ANIMATE_CAPTION=false;var _EVAL_SCRIPTS=true;var _EVAL_RESPONSE=false;var MOOdalBox={innerHTML:'	<div class="generic_dialog_popup" >         <table class="pop_dialog_table" id="pop_dialog_table" >         <tbody>             <tr>                 <td class="pop_topleft"/>                 <td class="pop_border pop_top"/>                 <td class="pop_topright"/>             </tr>             <tr>                 <td class="pop_border pop_side"/>                 <td id="pop_content" class="pop_content">                                     </td>                 <td class="pop_border pop_side"/>             </tr>             <tr>                 <td class="pop_bottomleft"/>                 <td class="pop_border pop_bottom"/>                 <td class="pop_bottomright"/>             </tr>         </tbody>         </table>     </div>  ',init:function(A){this.options=Object.extend({resizeDuration:_RESIZE_DURATION,initialWidth:_INITIAL_WIDTH,initialHeight:_INITIAL_HEIGHT,contentsWidth:_CONTENTS_WIDTH,contentsHeight:_CONTENTS_HEIGHT,defContentsWidth:_DEF_CONTENTS_WIDTH,defContentsHeight:_DEF_CONTENTS_HEIGHT,animateCaption:_ANIMATE_CAPTION,evalScripts:_EVAL_SCRIPTS,evalResponse:_EVAL_RESPONSE},A||{});this.anchors=[];$A($$("a")).each(function(C){if(C.rel&&C.href&&C.rel.test("^moodalbox","i")){C.onclick=this.click.pass(C,this);this.anchors.push(C)}},this);this.eventKeyDown=this.keyboardListener.bindWithEvent(this);this.eventPosition=this.position.bind(this);this.overlay=new Element("div").setProperty("id","mb_overlay").injectInside(document.body);this.center=new Element("div").setProperty("id","mb_center").setStyles({width:this.options.initialWidth+"px",height:this.options.initialHeight+"px",marginLeft:"-"+(this.options.initialWidth/2)+"px",display:"none"}).injectInside(document.body);this.center.setHTML(this.innerHTML);this.contents=new Element("div").setProperty("id","mb_contents").injectInside($("pop_content"));this.bottom=new Element("div").setProperty("id","mb_bottom").setStyle("display","none").injectInside(document.body);this.closelink=new Element("a").setProperties({id:"mb_close_link",href:"#"}).injectInside(this.bottom);this.caption=new Element("div").setProperty("id","mb_caption").injectInside(this.bottom);new Element("div").setStyle("clear","both").injectInside(this.bottom);this.error=new Element("div").setProperty("id","mb_error").setHTML(_ERROR_MESSAGE);var B=this.nextEffect.bind(this);this.fx={overlay:this.overlay.effect("opacity",{duration:200}).hide(),resize:this.center.effects({duration:this.options.resizeDuration,onComplete:B}),contents:this.contents.effect("opacity",{duration:500,onComplete:B}),bottom:this.bottom.effects({duration:400,onComplete:B})};this.ajaxRequest=Class.empty},click:function(A){return this.open(A.href,A.title,A.rel)},open:function(B,A,C){this.href=B;this.title=A;this.rel=C;this.position();this.setup(true);this.top=Window.getScrollTop()+(Window.getHeight()/15);this.center.setStyles({top:this.top+"px",display:""});this.fx.overlay.custom(0);return this.loadContents(B)},position:function(){this.overlay.setStyles({top:Window.getScrollTop()+"px",height:Window.getHeight()+"px"})},setup:function(A){var C=$A($$("object"));C.extend($$(window.ActiveXObject?"select":"embed"));C.each(function(D){D.style.visibility=A?"hidden":""});var B=A?"addEvent":"removeEvent";window[B]("scroll",this.eventPosition)[B]("resize",this.eventPosition);document[B]("keydown",this.eventKeyDown);this.step=0},loadContents:function(){if(this.step){return false}this.step=1;var D=this.rel.match(/[0-9]+/g);this.options.contentsWidth=(D&&(D[0]>0))?D[0]:this.options.defContentsWidth;this.options.contentsHeight=(D&&(D[1]>0))?D[1]:this.options.defContentsHeight;this.bottom.setStyles({opacity:"0",height:"0px",display:"none"});this.center.className="mb_loading";this.fx.contents.hide();var C=this.nextEffect.bind(this);var B=this.ajaxFailure.bind(this);var A={method:"get",update:this.contents,evalScripts:this.options.evalScripts,evalResponse:this.options.evalResponse,onComplete:C,onFailure:B,headers:{"If-Modified-Since":"Sat, 1 Jan 2000 00:00:00 GMT"}};this.ajaxRequest=new Ajax(this.href,A).request();return false},ajaxFailure:function(){this.contents.setHTML("");this.error.clone().injectInside(this.contents);this.nextEffect();this.center.setStyle("cursor","pointer");this.bottom.setStyle("cursor","pointer");this.center.onclick=this.bottom.onclick=this.close.bind(this)},nextEffect:function(){switch(this.step++){case 1:this.center.className="";this.center.setStyle("cursor","default");this.bottom.setStyle("cursor","default");this.center.onclick=this.bottom.onclick="";this.caption.setHTML(this.title);this.contents.setStyles({width:this.options.contentsWidth+"px",height:this.options.contentsHeight+"px"});if(this.center.clientHeight!=this.contents.offsetHeight){this.fx.resize.custom({height:[this.center.clientHeight,this.contents.offsetHeight+24]});break}this.step++;case 2:if(this.center.clientWidth!=this.contents.offsetWidth){this.fx.resize.custom({width:[this.center.clientWidth,this.contents.offsetWidth+24],marginLeft:[-this.center.clientWidth/2,-this.contents.offsetWidth/2]});break}this.step++;case 3:this.bottom.setStyles({top:(this.top+this.center.clientHeight)+"px",width:this.contents.style.width,marginLeft:this.center.style.marginLeft,display:""});this.fx.contents.custom(0,1);break;case 4:if(this.options.animateCaption){this.fx.bottom.custom({opacity:[0,1],height:[0,this.bottom.scrollHeight]});break}this.bottom.setStyles({opacity:"1",height:this.bottom.scrollHeight+"px"});case 5:this.step=0}},keyboardListener:function(A){if((A.control&&A.key=="w")||(A.control&&A.key=="x")||(A.key=="esc")){this.close();A.stop()}},close:function(){if(this.step<0){return }this.step=-1;for(var A in this.fx){this.fx[A].clearTimer()}this.center.style.display=this.bottom.style.display="none";this.center.className="mb_loading";this.fx.overlay.chain(this.setup.pass(false,this)).custom(0);return false}};Window.onDomReady(MOOdalBox.init.bind(MOOdalBox));