if(typeof KAUFDA=="undefined"||!KAUFDA){var KAUFDA={};KAUFDA.gui={}}KAUFDA.gui.OverlayPositionFactory=function(b,i){var h=10;var d=null;var a=null;var e=null;var o=null;var l=null;var n=null;var k=null;var g=null;if(Object.isString(b)){d=$(b)}else{if(Object.isElement(b)){d=b}}if(Object.isString(i)){e=$(i)}else{if(Object.isElement(i)){e=i}}var c=function(){if(e){o=e.viewportOffset().left;l=(e.getWidth()+e.viewportOffset().left)}};var j=function(p,q){return(o<p)&&(l>q)};var f=function(p){return o>p};var m=function(p){return l<p};this.setDialog=function(p){a=p};this.getDialogXPos=function(){var p=d.cumulativeOffset().left-(a.getWidth()/2)+(d.getWidth()/2);var q=p+a.getWidth();c();if(e){if(!j(p,q)&&f(p)){p=(o-p)+p}else{if(!j(p,q)&&m(q)){p=p-(q-l)}}}n=p;k=q;return p};this.getDialogYPos=function(){return d.cumulativeOffset().top+d.getHeight()+h};this.getDialogArrowOffset=function(r){var q=(d.getWidth()/2)-7;var p=d.cumulativeOffset().left-n;return q+p};g=this};KAUFDA.gui.Overlay=function(w,o,v){var n=null;var g=null;var A=null;var a=null;var G=null;var O=null;var J=null;var K=null;var z=null;var b=document.documentElement.clientHeight;var I=document.viewport.getWidth();var i=null;var L=false;var u=false;n=$(document.body);var e=Object.extend({xPos:null,yPos:null,fixedDialog:false,clickCloseTargetClass:"overlay-close-button",overlayPositionFactory:null,ajaxDialogUrl:null,ajaxDialogParams:null,fadeIn:true,fadeOut:true,resetDialog:null,overlayColor:null,overlayOpacity:null},v);if(Object.isString(w)){g=$(w)}else{g=w}if(Object.isString(o)){J=$(o)}else{J=o}z=e.overlayPositionFactory;if(z){K=$(g.id+"-top-arrow")}G=g.getHeight();O=g.getWidth();a=new Element("div",{"class":"kaufda-overlay"});a.hide();g.hide();var B=function(){if(r()){a.setStyle({position:"fixed"})}else{a.setStyle({position:"absolute"});m();Event.observe(window,"scroll",m)}};var k=function(){a.setStyle({width:"100%",height:"100%",top:"0px",left:"0px",zIndex:"400",display:"none"})};var y=function(R,Q){if(R){a.setStyle({backgroundColor:R})}if(Q){a.setOpacity(Q)}};var j=function(){g.setStyle({zIndex:"401",backgroundColor:"#ffffff",display:"none"})};var q=function(){var R=e.xPos;var Q=e.yPos;if((R&&Q)||z!=null){g.setStyle({position:"absolute"})}else{if(r()){g.setStyle({position:"fixed"})}else{g.setStyle({position:"absolute"});C();Event.observe(window,"scroll",C)}}x(R,Q)};var x=function(R,Q){g.setStyle({left:H(R)+"px",top:t(Q)+"px"})};var s=function(){M()};var r=function(){var R=false;var Q=true;if(Prototype.Browser.IE){R=parseInt(navigator.appVersion.split("MSIE")[1])}if(R&&R<7){Q=false}return Q};var C=function(){if(g){g.setStyle({top:N()})}};var m=function(){if(a){a.setStyle({top:l()})}};var d=function(){var Q=0;if(window.innerHeight){Q=window.pageYOffset}else{if(document.documentElement&&document.documentElement.clientHeight){Q=document.documentElement.scrollTop}else{if(document.body){Q=document.body.scrollTop}}}return Q};var N=function(){var Q=d();Q+=(document.viewport.getHeight()*0.5)-(G/2);return Q};var l=function(){var Q=d();return Q};var H=function(R){var Q=0;if(Object.isNumber(R)){Q=R}else{if(Object.isFunction(R)){Q=R(n,g)}else{if(z!=null){Q=z.getDialogXPos(g)}else{Q=(document.viewport.getWidth()*0.5)-(O/2)}}}return Q};var t=function(R){var Q=0;if(Object.isNumber(R)){Q=R}else{if(Object.isFunction(R)){Q=R(n,g)}else{if(z!=null){Q=z.getDialogYPos(g)}else{Q=(document.viewport.getHeight()*0.5)-(G/2)}}}return Q};var F=function(Q){g.setStyle({left:H(e.xPos)+"px",top:t(e.yPos)+"px"})};var M=function(Q){if(K){K.setStyle({left:z.getDialogArrowOffset(K)+"px"})}};var f=function(R){var Q=g.select("."+R);if(Object.isArray(Q)){Q.each(function(S){S.observe("click",i.hide)})}};var h=function(){if(e.resetDialog&&e.ajaxDialogUrl){g.setAttribute("class",A.className)}};var P=function(){if(e.fixedDialog||z){Event.observe(window,"resize",function(Q){if(b!=document.documentElement.clientHeight||I!=document.viewport.getWidth()){F(Q);M(Q)}b=document.documentElement.clientHeight;I=document.viewport.getWidth()})}Event.observe(document,"KAUFDA:Overlay:hide",function(Q){if(Q.memo.uniqueId==g.id){i.hide()}})};var c=function(){if(J&&Object.isElement(J)){Event.observe(J,"click",i.show)}Event.observe(document,"KAUFDA:Overlay:show",function(Q){if(Q.memo.uniqueId==g.id){i.show()}});Event.observe(a,"click",i.hide.bindAsEventListener(i));Event.observe(document,"KAUFDA:Overlay:dialogComplete",function(Q){if(Q.memo.uniqueId==g.id){p()}});Event.observe(document,"KAUFDA:Overlay:dialogHidden",function(Q){if(Q.memo.uniqueId==g.id){h()}})};var E=function(){new Ajax.Request(e.ajaxDialogUrl,{method:"post",parameters:e.ajaxDialogParams||{},onSuccess:D,onFailure:function(){},evalScripts:true,evalJS:true})};var D=function(R){var Q=R.responseText;g.update(Q);if(K){g.insert({top:K})}G=g.getHeight();O=g.getWidth();i.initDialog();Event.fire(document,"KAUFDA:Overlay:dialogComplete",{uniqueId:g.id})};var p=function(){a.show();if(e.fadeIn){new Effect.Appear(g,{duration:0.4,to:1});new PeriodicalExecuter(function(Q){Event.fire(document,"KAUFDA:Overlay:complete",{uniqueId:g.id});Q.stop()},0.8)}else{g.show();Event.fire(document,"KAUFDA:Overlay:complete",{uniqueId:g.id})}};this.show=function(){if(e.ajaxDialogUrl){E()}else{Event.fire(document,"KAUFDA:Overlay:dialogComplete",{uniqueId:g.id})}return this};this.hide=function(){if(e.fadeOut){Effect.Fade(g,{duration:1});new PeriodicalExecuter(function(Q){Event.fire(document,"KAUFDA:Overlay:dialogHidden",{uniqueId:g.id});Q.stop()},1.1)}else{g.hide();Event.fire(document,"KAUFDA:Overlay:dialogHidden",{uniqueId:g.id})}a.hide();return this};this.setDialog=function(Q){g=Q};i=this;this.initAll=function(){i.initOverlay();i.initDialog()};this.initOverlay=function(){B();k();y(e.overlayColor,e.overlayOpacity);c();n.insert(a);L=true};this.initDialog=function(){j();P();f(e.clickCloseTargetClass);if(z){z.setDialog(g)}q();s();n.insert(g);A=g.clone(true);u=true};g.init=function(){i.initOverlay()}};