if(!window.Modalbox){var Modalbox=new Object();window.Modalbox=Modalbox;}Modalbox.Methods={focusableElements:new Array,options:{title:"ModalBox Window",overlayClose:true,width:484,height:464,overlayOpacity:0.75,overlayDuration:0.5,slideDownDuration:0.35,slideUpDuration:0.35,resizeDuration:0.35,inactiveFade:true,loadingString:"Please wait. Loading...",closeString:"Close window",params:{},method:"get"},_options:new Object,setOptions:function(a){Object.extend(this.options,a||{});
},_init:function(a){Object.extend(this._options,this.options);this.setOptions(a);this.MBoverlay=Builder.node("div",{id:"MB_overlay",style:"opacity: 0"});if(navigator.userAgent.indexOf("MSIE")!=-1){this.MBoverlay.style.filter="alpha(opacity=0)";}this.MBwindow=Builder.node("div",{id:"MB_window",style:"display: none"},[this.MBtop=Builder.node("div",{id:"MB_top"},[this.topleft=Builder.node("div",{id:"topleft"},[this.topright=Builder.node("div",{id:"topright"},[this.logintop=Builder.node("div",{id:"logintop"},[]),]),]),]),this.hedleft=Builder.node("div",{id:"hedleft"},[this.hedright=Builder.node("div",{id:"hedright"},[this.MBheader=Builder.node("div",{id:"MB_header"},[this.MBclose=Builder.node("a",{id:"MB_close",title:this.options.closeString,href:"#"},[Builder.build("<span><img src='/images/popup/popup_close.jpg' alt='' /></span>"),]),]),this.MBcontent=Builder.node("div",{id:"MB_content",style:""},[this.MBloading=Builder.node("div",{id:"MB_loading"},this.options.loadingString),]),]),]),this.topleft=Builder.node("div",{id:"botleft"},[this.topright=Builder.node("div",{id:"botright"},[this.logintop=Builder.node("div",{id:"MB_bot"},[]),]),]),]);
document.body.insertBefore(this.MBwindow,document.body.childNodes[0]);document.body.insertBefore(this.MBoverlay,document.body.childNodes[0]);this.initScrollX=window.pageXOffset||document.body.scrollLeft||document.documentElement.scrollLeft;this.initScrollY=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop;
this.hide=this.hide.bindAsEventListener(this);this.close=this._hide.bindAsEventListener(this);this.kbdHandler=this.kbdHandler.bindAsEventListener(this);this._initObservers();this.initialized=true;this.active=true;},show:function(b,a,c){if(!this.initialized){this._init(a);}this.content=b;this.setOptions(a);
this.focusInput=c;if(this.MBwindow.style.display=="none"){this._appear();this.event("onShow");}else{this._update();this.event("onUpdate");}},hide:function(a){if(this.initialized){if(a){Object.extend(this.options,a);}Effect.Fade(this.MBwindow,{duration:this.options.slideUpDuration,afterFinish:this._deinit.bind(this)});
}else{throw ("Modalbox isn't initialized");}},enabledInputs:function(){var b=$$("input");if(b.length>0){for(var a=b.length-1;a>=0;a--){if(b[a].name!="balance_add"){b[a].activate();}else{b[a].focus();}}}if(this.focusInput!=null){document.getElementsByName(this.focusInput)[0].focus();}window.scrollTo(0,this.scrollY);
},_hide:function(a){if(a){Event.stop(a);}this.hide();},flashHandler:function(b){var c=$$("object");if(c.length>0){for(var a=0;a<c.length;a++){if(b){c[a].style.visibility="hidden";}else{c[a].style.visibility="visible";}}}},_appear:function(){this._toggleSelects();this.scrollY=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop;
this.scrollX=window.pageXOffset||document.body.scrollLeft||document.documentElement.scrollLeft;this.flashHandler(true);this._setOverlay();this._setWidth();this._setPosition();this.MBoverlay.setStyle({opacity:this.options.overlayOpacity});this.MBoverlay.show();this.MBwindow.show();this._setPosition();
this.loadContent();this._setWidthAndPosition=this._setWidthAndPosition.bindAsEventListener(this);Event.observe(window,"resize",this._setWidthAndPosition);},resize:function(f,g,c){var e=Element.getHeight(this.MBwindow);var d=Element.getHeight(this.MBheader);var b=Element.getHeight(this.MBcontent);var a=((e-d+g)<b)?(b+d-e):g;
this.setOptions(c);new Effect.ScaleBy(this.MBwindow,f,a,{duration:this.options.resizeDuration,afterFinish:function(){this.event("afterResize");}.bind(this)});},_update:function(){this.currentDims=[this.MBwindow.offsetWidth,this.MBwindow.offsetHeight];if((this.options.width+10!=this.currentDims[0])||(this.options.height+5!=this.currentDims[1])){new Effect.ScaleBy(this.MBwindow,(this.options.width-this.currentDims[0]),(this.options.height-this.currentDims[1]),{duration:this.options.resizeDuration,afterFinish:this._loadаrAfterResize.bind(this),beforeStart:function(a){Element.update(this.MBcontent,"");
this.MBcontent.appendChild(this.MBloading);Element.update(this.MBloading,this.options.loadingString);}.bind(this)});}else{Element.update(this.MBcontent,"");this.MBcontent.appendChild(this.MBloading);Element.update(this.MBloading,this.options.loadingString);this._loadAfterResize();}},loadContent:function(){if(this.event("beforeLoad")!=false){if(typeof this.content=="string"){var htmlRegExp=new RegExp(/<\/?[^>]+>/gi);
if(htmlRegExp.test(this.content)){this._insertContent(this.content);}else{new Ajax.Request(this.content,{method:this.options.method.toLowerCase(),parameters:this.options.params,onComplete:function(transport){var response=new String(transport.responseText);response.extractScripts().map(function(script){return eval(script.replace("<!--","").replace("// -->",""));
}.bind(window));this._insertContent(transport.responseText.stripScripts());}.bind(this)});}}else{if(typeof this.content=="object"){this._insertContent(this.content);}else{Modalbox.hide();throw ("Please specify correct URL or HTML element (plain HTML or object)");}}}},_insertContent:function(b){Element.extend(this.MBcontent);
this.MBcontent.update("");if(typeof b=="string"){this.MBcontent.hide().update(b);}else{if(typeof this.content=="object"){var a=b.cloneNode(true);if(this.content.id){a.id="MB_"+a.id;}this.MBcontent.hide().appendChild(a);this.MBcontent.down().show();}}if(this.options.height==this._options.height){Modalbox.resize(0,this.MBcontent.getHeight()-Element.getHeight(this.MBwindow)+Element.getHeight(this.MBheader),{afterResize:function(){this.MBcontent.show();
this.focusableElements=this._findFocusableElements();this._moveFocus();this.event("afterLoad");}.bind(this)});}else{this._setWidth();this.MBcontent.setStyle({overflow:"hidden",height:Element.getHeight(this.MBwindow)-Element.getHeight(this.MBheader)+18+"px"});this.MBcontent.show();this.focusableElements=this._findFocusableElements();
this._moveFocus();this.event("afterLoad");}},activate:function(a){this.setOptions(a);this.active=true;Event.observe(this.MBclose,"click",this.close);if(this.options.overlayClose){Event.observe(this.MBoverlay,"click",this.hide);}Element.show(this.MBclose);if(this.options.inactiveFade){new Effect.Appear(this.MBwindow,{duration:this.options.slideUpDuration});
}},deactivate:function(a){this.setOptions(a);this.active=false;Event.stopObserving(this.MBclose,"click",this.close);if(this.options.overlayClose){Event.stopObserving(this.MBoverlay,"click",this.hide);}Element.hide(this.MBclose);if(this.options.inactiveFade){new Effect.Fade(this.MBwindow,{duration:this.options.slideUpDuration,to:0.75});
}},_initObservers:function(){Event.observe(this.MBclose,"click",this.close);if(this.options.overlayClose){Event.observe(this.MBoverlay,"click",this.hide);}Event.observe(document,"keypress",Modalbox.kbdHandler);},_removeObservers:function(){Event.stopObserving(this.MBclose,"click",this.close);if(this.options.overlayClose){Event.stopObserving(this.MBoverlay,"click",this.hide);
}Event.stopObserving(document,"keypress",Modalbox.kbdHandler);},_loadAfterResize:function(){this._setWidth();this._setPosition();this.loadContent();},_moveFocus:function(){if(this.focusableElements.length>0){this.focusableElements.first().focus();}else{$("MB_close").focus();}},_findFocusableElements:function(){return $A($("MB_content").descendants()).findAll(function(a){return(["INPUT","TEXTAREA","SELECT","A","BUTTON"].include(a.tagName));
});},kbdHandler:function(b){var a=Event.element(b);switch(b.keyCode){case Event.KEY_TAB:if(Event.element(b)==this.focusableElements.last()){Event.stop(b);this._moveFocus();}break;case Event.KEY_ESC:if(this.active){this._hide(b);}break;case 32:this._preventScroll(b);break;case 0:if(b.which==32){this._preventScroll(b);
}break;case Event.KEY_UP:case Event.KEY_DOWN:case Event.KEY_PAGEDOWN:case Event.KEY_PAGEUP:case Event.KEY_HOME:case Event.KEY_END:if(/Safari|KHTML/.test(navigator.userAgent)&&!["textarea","select"].include(a.tagName.toLowerCase())){Event.stop(b);}else{if((a.tagName.toLowerCase()=="input"&&["submit","button"].include(a.type))||(a.tagName.toLowerCase()=="a")){Event.stop(b);
}}break;}},_preventScroll:function(a){if(!["input","textarea","select","button"].include(Event.element(a).tagName.toLowerCase())){Event.stop(a);}},_deinit:function(){this._toggleSelects();this._removeObservers();Event.stopObserving(window,"resize",this._setWidthAndPosition);Effect.toggle(this.MBoverlay,"appear",{duration:this.options.overlayDuration,afterFinish:this._removeElements.bind(this)});
Element.setStyle(this.MBcontent,{overflow:"",height:""});},_removeElements:function(){if(navigator.userAgent.indexOf("MSIE")!=-1){this.enabledInputs();}else{if(this.focusInput!=null){document.getElementsByName(this.focusInput)[0].focus();}}this.flashHandler(false);if(navigator.appVersion.match(/\bMSIE\b/)){this._prepareIE("","",0);
}Element.remove(this.MBoverlay);Element.remove(this.MBwindow);this.initialized=false;this.event("afterHide");this.setOptions(this._options);},_setOverlay:function(){if(navigator.appVersion.match(/\bMSIE\b/)){this._prepareIE("100%","hidden",17);if(!navigator.appVersion.match(/\b7.0\b/)){window.scrollTo(0,0);
}}},_setWidth:function(){Element.setStyle(this.MBwindow,{width:this.options.width+"px",height:this.options.height+"px"});},_setPosition:function(){var a=(window.innerWidth)?window.innerWidth:document.documentElement.clientWidth;var b=(window.innerHeight)?window.innerHeight:document.documentElement.clientHeight;
this.MBwindow.style.left=((a-Element.getWidth(this.MBwindow))/2)+"px";this.MBwindow.style.top=((b-Element.getHeight(this.MBwindow))/2)+"px";$("MB_overlay").style.width=a+"px";},_setWidthAndPosition:function(){this._setWidth();this._setPosition();},_getScrollTop:function(){var a;if(document.documentElement&&document.documentElement.scrollTop){a=document.documentElement.scrollTop;
}else{if(document.body){a=document.body.scrollTop;}}return a;},_prepareIE:function(b,e,c){var a=document.getElementsByTagName("body")[0];a.style.height=b;a.style.overflow=e;a.style.paddingRight=c+"px";var d=document.getElementsByTagName("html")[0];d.style.height=b;d.style.overflow=e;},_toggleSelects:function(){if(navigator.appVersion.match(/\bMSIE\b/)){$$("select").each(function(a){a.style.visibility=(a.style.visibility=="")?"hidden":"";
});}},event:function(a){if(this.options[a]){var b=this.options[a]();this.options[a]=null;if(b!=undefined){return b;}else{return true;}}return true;}};Object.extend(Modalbox,Modalbox.Methods);Effect.ScaleBy=Class.create();Object.extend(Object.extend(Effect.ScaleBy.prototype,Effect.Base.prototype),{initialize:function(b,c,d,a){this.element=$(b);
var a=Object.extend({scaleFromTop:true,scaleMode:"box",scaleByWidth:c,scaleByHeight:d},arguments[3]||{});this.start(a);},setup:function(){this.elementPositioning=this.element.getStyle("position");this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;this.dims=null;if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth];
}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth];}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];}this.deltaY=this.options.scaleByHeight;this.deltaX=this.options.scaleByWidth;},update:function(a){var c=this.dims[0]+(this.deltaY*a);
var b=this.dims[1]+(this.deltaX*a);this.setDimensions(c,b);},setDimensions:function(a,e){var f={};f.width=e+"px";f.height=a+"px";var c=Math.round((a-this.dims[0])/2);var b=Math.round((e-this.dims[1])/2);if(this.elementPositioning=="absolute"||this.elementPositioning=="fixed"){if(!this.options.scaleFromTop){f.top=this.originalTop-c+"px";
}f.left=this.originalLeft-b+"px";}else{if(!this.options.scaleFromTop){f.top=-c+"px";}f.left=-b+"px";}this.element.setStyle(f);}});
