var csspopup=Class.create({_overlay:null,_window:null,_options:null,_isOpen:false,initialize:function(a,c,b){this._options=Object.extend({overlayClose:true,reloadOnClose:false,showCloseButton:b.showCloseButton||true,onCloseCallback:Prototype.emptyFunction},b||{});csspopup._currentInstance=this;if(csspopup.browser.isMSIE&&!csspopup._window_loaded){Event.observe(window,"load",this._initCsspopup.bind(this,a,c,b))}else{this._initCsspopup(a,c,b)}},_initCsspopup:function(a,d,b){var c=document.viewport.getDimensions();if((a+60)>c.height){a=c.height-60}if((d+60)>c.width){d=c.width-60}this._initOverlay();this._initWindowObjectByType(b.type,a,d,b.options);this.show()},_initOverlay:function(){this._overlay=csspopup_overlay.getInstance()},_initWindowObjectByType:function(e,a,d,b){if(Object.isUndefined(window["csspopup_window_"+e])){throw ('csspopup type "'+e+'" not supported')}else{var f=Class.create(csspopup_window,window["csspopup_window_"+e]);this._window=new f(a,d,b)}},show:function(){if(this._isOpen){return}if(this._options.overlayClose){Event.observe(document.body,"click",this._onclickCloseOverlayEvent.bindAsEventListener(this))}if(this._options.showCloseButton){$("csspopup_closebutton").observe("click",this._onclickCloseButtonEvent.bindAsEventListener(this))}else{$("csspopup_closebutton").hide()}this._overlay.show();this._window.show();this._isOpen=true},_onclickCloseOverlayEvent:function(a){if(a.target.id=="csspopup_window_outerwrapper"||a.target.id=="csspopup_overlay"){this.close()}},_onclickCloseButtonEvent:function(a){a.stop();this.close()},close:function(){if(!this._isOpen){return}if(this._options.reloadOnClose){this._options.onCloseCallback(this);window.location.reload()}else{this._options.onCloseCallback(this);this._destroy();this._overlay.hide()}this._isOpen=false},_destroy:function(){this._window.destroy();csspopup._currentInstance=null},setOption:function(a,b){this._options[a]=b},getOption:function(a){return this._options[a]},getWindow:function(){return this._window}});csspopup._currentInstance=null;csspopup.getCurrentInstance=function(){return csspopup._currentInstance};csspopup.browser={detect:function(){var a=navigator.userAgent;this.isKHTML=/Konqueror/.test(a);this.isWebKit=navigator.userAgent.indexOf("AppleWebKit/")>-1;this.isGecko=Prototype.Browser.Gecko;this.isOpera=Prototype.Browser.Opera;this.isMSIE=Prototype.Browser.IE;this.isMSIE5=this.isMSIE&&!document.compatMode;this.isMSIE6=this.isMSIE&&document.compatMode&&!window.XMLHttpRequest;this.isMSIE7=this.isMSIE&&window.XMLHttpRequest}};csspopup.browser.detect();csspopup._window_loaded=false;if(csspopup.browser.isMSIE){Event.observe(window,"load",function(){csspopup._window_loaded=true})}var csspopup_window=Class.create({_height:0,_width:0,_element:null,_options:null,_defaultOptions:null,initialize:function(a,c,b){this._options=Object.extend({topclose:true},Object.extend(this._defaultOptions,b||{})||{});this._element=new Element("div",{id:"csspopup_window",style:"display:none"});this._element.insert(csspopup_window.html);if(!this._options.topclose){this._element.select("#csspopup_closebutton").first().hide()}Element.insert(document.body,{bottom:this._element});this.setSize(a,c);this._initContent()},setSize:function(a,b){this._height=a;this._width=b;this._element.setStyle({height:this._height+"px",width:this._width+"px",marginTop:(Math.round(this._height/2)*-1)+"px",marginLeft:(Math.round(this._width/2)*-1)+"px"})},showCloseButton:function(){this._element.select("#csspopup_closebutton").first().show()},hideCloseButton:function(){this._element.select("#csspopup_closebutton").first().hide()},_initContent:function(){},_setContent:function(a){$("csspopup-window-content").update(a)},show:function(){this._element.show();this._element.fire("csspopup:opened")},hide:function(){this._element.hide()},destroy:function(){this._element.hide();this._element.remove()}});csspopup_window.html='<div class="csspopup-window-topwrapper"><ul><li class="csspopup-window-topleftcorner"></li><li class="csspopup-window-top"></li><li class="csspopup-window-toprightcorner"></li></ul></div><div class="csspopup-window-middlewrapper"><ul><li class="csspopup-window-left"></li><li id="csspopup-window-content"></li><li class="csspopup-window-right"></li></ul></div><div class="csspopup-window-bottomwrapper"><ul><li class="csspopup-window-bottomleftcorner"></li><li class="csspopup-window-bottom"></li><li class="csspopup-window-bottomrightcorner"></li></ul></div><a href="#" id="csspopup_closebutton"><span>Schließen</span></a>';var csspopup_window_iframe={_defaultOptions:{src:"",scrolling:"auto",offsetHeight:0},_iframe:null,_initContent:function(){this._iframe=new Element("iframe",{src:this._options.src,frameBorder:0,hspace:0,scrolling:this._options.scrolling}).setStyle({width:"100%"});this._setContent(this._iframe)},getIframe:function(){return this._iframe},show:function($super){$super();this._iframe.setStyle({height:($("csspopup-window-content").getHeight()+this._options.offsetHeight)+"px"})}};var csspopup_window_ajax={_defaultOptions:{src:"",ajax:{method:"get",evalScripts:true}},_initContent:function(){$("csspopup-window-content").addClassName("csspopup-window-content-ajax");this._setContent("")},show:function($super){var a=Object.extend({onComplete:function(b){this._setContent(b.responseText)}.bind(this)},this._options.ajax);new Ajax.Request(this._options.src,a);$super()}};var csspopup_window_image={_defaultOptions:{src:""},_image:null,_initContent:function(){this._image=new Element("img",{src:this._options.src}).setStyle({width:"100%",height:"100%"});this._setContent(this._image)}};var csspopup_window_flash={_flash:null,_defaultOptions:{src:"",quality:"high",wmode:"transparent"},_initContent:function(){this._flash=new SWFObject(this._options.src,"csspopup_flash","100%","100%","8","#FFFFFF");this._flash.addParam("quality",this._options.quality);this._flash.addParam("wmode",this._options.wmode);$("csspopup-window-content").addClassName("csspopup-window-content-flash")},show:function($super){$super();this._flash.write("csspopup-window-content")}};var csspopup_overlay=Class.create({_element:null,_options:null,_hiddenSelects:null,initialize:function(){this._element=new Element("div",{id:"csspopup_overlay"});this._element.addClassName((this._detectFX2()?"csspopup-overlay-fx2-opacity":"csspopup-overlay-opacity")).setStyle({display:"none"});Element.insert(document.body,{bottom:this._element})},show:function(){if(csspopup.browser.isMSIE6){this._hiddenSelects=$$("select");this._hideSelects()}this._element.show()},hide:function(){this._element.hide();if(csspopup.browser.isMSIE6){this._showSelects()}},visible:function(){return this._element.visible()},destroy:function(){this._element.hide();this._element.remove();csspopup_overlay.instance=null},_hideSelects:function(){if(Object.isArray(this._hiddenSelects)&&this._hiddenSelects.length>0){this._hiddenSelects.invoke("setStyle","visibility:hidden")}},_showSelects:function(){if(Object.isArray(this._hiddenSelects)&&this._hiddenSelects.length>0){this._hiddenSelects.invoke("setStyle","visibility:visible")}},_detectFX2:function(){if(!Prototype.Browser.Gecko){return false}var b=navigator.userAgent.toLowerCase();if(/firefox[\/\s](\d+\.\d+)/.test(b)){var a=parseInt(RegExp.$1);if(a<3){return true}}return false}});csspopup_overlay.getInstance=function(){if(Object.isUndefined(csspopup_overlay.instance)||csspopup_overlay.instance==null){csspopup_overlay.instance=new csspopup_overlay()}return csspopup_overlay.instance};