/*
    Slimbox v1.64 - The ultimate lightweight Lightbox clone
    (c) 2007-2008 Christophe Beyls <http://www.digitalia.be>
    MIT-style license.
*/
var Slimbox;(function(){var G=0,F,L,B,S,T,O,E,M,J=new Image(),K=new Image(),X,a,P,H,W,Z,I,Y,C;window.addEvent("domready",function(){$(document.body).adopt($$([X=new Element("div",{id:"lbOverlay"}).addEvent("click",N),a=new Element("div",{id:"lbCenter"}),Z=new Element("div",{id:"lbBottomContainer"})]).setStyle("display","none"));P=new Element("div",{id:"lbImage"}).injectInside(a).adopt(H=new Element("a",{id:"lbPrevLink",href:"#"}).addEvent("click",D),W=new Element("a",{id:"lbNextLink",href:"#"}).addEvent("click",R));I=new Element("div",{id:"lbBottom"}).injectInside(Z).adopt(new Element("a",{id:"lbCloseLink",href:"#"}).addEvent("click",N),Y=new Element("div",{id:"lbCaption"}),C=new Element("div",{id:"lbNumber"}),new Element("div",{styles:{clear:"both"}}));E={overlay:new Fx.Tween(X,{property:"opacity",duration:500}).set(0),image:new Fx.Tween(P,{property:"opacity",duration:500,onComplete:A}),bottom:new Fx.Tween(I,{property:"margin-top",duration:400})}});Slimbox={open:function(e,d,c){F=$extend({loop:false,overlayOpacity:0.8,resizeDuration:400,resizeTransition:false,initialWidth:250,initialHeight:250,animateCaption:true,showCounter:true,counterText:"{x} / {y}"},c||{});if(typeof e=="string"){e=[[e,d]];d=0}L=e;F.loop=F.loop&&(L.length>1);b();Q(true);O=window.getScrollTop()+(window.getHeight()/15);E.resize=new Fx.Morph(a,$extend({duration:F.resizeDuration,onComplete:A},F.resizeTransition?{transition:F.resizeTransition}:{}));a.setStyles({top:O,width:F.initialWidth,height:F.initialHeight,marginLeft:-(F.initialWidth/2),display:""});E.overlay.start(F.overlayOpacity);G=1;return U(d)}};Element.implement({slimbox:function(c,d){$$(this).slimbox(c,d);return this}});Elements.implement({slimbox:function(c,f,e){f=f||function(g){return[g.href,g.title]};e=e||function(){return true};var d=this;d.removeEvents("click").addEvent("click",function(){var g=d.filter(e,this);return Slimbox.open(g.map(f),g.indexOf(this),c)});return d}});function b(){X.setStyles({top:window.getScrollTop(),height:window.getHeight()})}function Q(c){["object",window.ie?"select":"embed"].forEach(function(e){Array.forEach(document.getElementsByTagName(e),function(f){if(c){f._slimbox=f.style.visibility}f.style.visibility=c?"hidden":f._slimbox})});X.style.display=c?"":"none";var d=c?"addEvent":"removeEvent";window[d]("scroll",b)[d]("resize",b);document[d]("keydown",V)}function V(c){switch(c.code){case 27:case 88:case 67:N();break;case 37:case 80:D();break;case 39:case 78:R()}return false}function D(){return U(S)}function R(){return U(T)}function U(c){if((G==1)&&(c>=0)){G=2;B=c;S=((B||!F.loop)?B:L.length)-1;T=B+1;if(T==L.length){T=F.loop?0:-1}$$(H,W,P,Z).setStyle("display","none");E.bottom.cancel().set(0);E.image.set(0);a.className="lbLoading";M=new Image();M.onload=A;M.src=L[c][0]}return false}function A(){switch(G++){case 2:a.className="";P.setStyles({backgroundImage:"url("+L[B][0]+")",display:""});$$(P,I).setStyle("width",M.width);$$(P,H,W).setStyle("height",M.height);Y.set("html",L[B][1]||"");C.set("html",(F.showCounter&&(L.length>1))?F.counterText.replace(/{x}/,B+1).replace(/{y}/,L.length):"");if(S>=0){J.src=L[S][0]}if(T>=0){K.src=L[T][0]}if(a.clientHeight!=P.offsetHeight){E.resize.start({height:P.offsetHeight});break}G++;case 3:if(a.clientWidth!=P.offsetWidth){E.resize.start({width:P.offsetWidth,marginLeft:-P.offsetWidth/2});break}G++;case 4:Z.setStyles({top:O+a.clientHeight,marginLeft:a.style.marginLeft,visibility:"hidden",display:""});E.image.start(1);break;case 5:if(S>=0){H.style.display=""}if(T>=0){W.style.display=""}if(F.animateCaption){E.bottom.set(-I.offsetHeight).start(0)}Z.style.visibility="";G=1}}function N(){if(G){G=0;M.onload=$empty;for(var c in E){E[c].cancel()}$$(a,Z).setStyle("display","none");E.overlay.chain(Q).start(0)}return false}})();

// AUTOLOAD CODE BLOCK (MAY BE CHANGED OR REMOVED)
Slimbox.scanPage = function() {
    var links = $$("a").filter(function(el) {
        return el.rel && el.rel.test(/^lightbox/i);
    });
    $$(links).slimbox({/* Put custom options here */}, null, function(el) {
        return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel));
    });
};
window.addEvent("domready", Slimbox.scanPage);

var Menu = {
    beginTransform : function(id){
        //$("mn_bgh_"+ id).fade("in").start;
        $('mn_bgh_'+id).tween('opacity', [0,1]);//Verhindert das springen beim ersten aufruf
        //(new Fx.Tween("mn_lnk_"+id)).set("color","#FFF");
        $('mn_lnk_'+id).tween('color', ["#888686","#FFFFFF"]);//Sanfter Verlauf für den Text
    },
    endTransform : function(id){
        $("mn_bgh_" + id).fade("out").start;
        //(new Fx.Tween("mn_lnk_" + id)).set("color", "#888686");
        $('mn_lnk_'+id).tween('color', "#888686");
    }
}

function switch_on(id)
{
    $('sw_'+id).setStyle("display","none");
    $('color_'+id).setStyle("display","block");
    $('list_default').setStyle("display","none");
    $('list_img'+id).setStyle("display","block");
    $('reference_hover_bg_'+id).setStyle("background-image","url(http://www.all2e-neu.max2.all2e-dev.de/extension/all2e/design/all2e_design/images/content/references_box_bg.png)");
}
function switch_off(id)
{
    $('sw_'+id).setStyle("display","block");
    $('color_'+id).setStyle("display","none");
    $('list_img'+id).setStyle("display","none");
    $('list_default').setStyle("display","block");
    $('reference_hover_bg_'+id).setStyle("background-image","none");
}

function team_switch_on(id)
{
    $('team_entry_'+id).setStyle("display","block");
    $('team_sessel').setStyle("display","none");
}
function team_switch_off(id)
{
    $('team_entry_'+id).setStyle("display","none");
    $('team_sessel').setStyle("display","block");
}
var Builder = {
          dialogBox : {  },
          SiteAccess : {  },
          SiteInfo : { URL : "/", NodeID : "2", Language : "" },
          BuildDialog : function(type){ 
          if($('overlay_Div'))
          {
                Builder.destroyDialog();
          }
          var windowSize = this.getWindowSize();
          var CustomSize = 0;
          if($('container').getSize().y > windowSize.height)
          {
                CustomSize = $('container').getSize().y;
          }else{
                CustomSize = windowSize.height;
          }

              var overlayDiv = new Element('div', {
                                               'styles' : {
                                                          'width' : windowSize.width,
                                                          'height' : CustomSize,
                                                          'background-color' : '#000000',
                                                          'position' : 'absolute',
                                                          'top' : '0px', 
                                                          'visibility' : 'hidden',
                                                          'opacity' : '0',
                                                          'z-index' : '20'
                                                          }, 
                                              'id' : 'overlay_Div' 
                                              });
              var overlayinnerDiv = new Element('div', {
                                               'styles' : {
                                                          'background-color' : 'transparent',
                                                          'position' : 'absolute', 
                                                          'z-index' : '20',
                                                          'opacity' : '0',
                                                          'visibility' : 'hidden'
                                                          },
                                              'id' : 'overlay_innerDiv' 
                                              });                                              
              //overlayinnerDiv.makeDraggable();
              var TopDiv = new Element('div', {
                                               'id' : 'dialog_TopDiv' ,
                                               'class' : 'all2e_dialogbox_top'
                                              });
              var ContentDiv = new Element('div', {
                                               'id' : 'diaglog_ContentDiv',
                                               'class' : 'all2e_dialogbox_content' 
                                              });
              var ContentVerlauf = new Element('div', {
                                               'id' : 'diaglog_ContentVerlauf',
                                               'class' : 'all2e_dialogbox_verlauf' 
                                              });
              var BottomDiv = new Element('div', {
                                               'id' : 'dialog_BottomDiv',
                                               'class' : 'all2e_dialogbox_bottom' 
                                              });
              var DialogBoxContent = new Element('div', {
                                               'id' : 'DialogBoxContent'
                                              });                                     
          
          this.dialogBox = DialogBoxContent;
          eval("BuilderClasses."+type+"()");  
          $(document.body).adopt(overlayDiv, overlayinnerDiv);
          ContentDiv.adopt(ContentVerlauf);
          ContentVerlauf.adopt(DialogBoxContent);
          overlayinnerDiv.adopt(TopDiv, ContentDiv, BottomDiv);
          var innerDivSize = overlayinnerDiv.getSize();
          overlayinnerDiv.setStyles({
              'top' : (windowSize.height / 2) - (innerDivSize.y / 2),
              'left' : (windowSize.width / 2) - (innerDivSize.x / 2)
          });
          overlayinnerDiv.fade(1);
          overlayDiv.fade(0.7);
          overlayDiv.addEvents({
              'click': function(){
                  Builder.destroyDialog();
              }
          });
	    },
	    destroyDialog : function(){	    
          if($('overlay_innerDiv') && $('overlay_Div')){

                    $('overlay_innerDiv').get('tween').start('opacity',0).chain(function() { $('overlay_innerDiv').destroy(); });
                    $('overlay_Div').get('tween').start('opacity',0).chain(function() { $('overlay_Div').destroy(); });
          }          
        },
        getWindowSize : function(){
            var result = {width:0,height:0};
            if(self.innerHeight){
                if(document.documentElement.clientWidth){
                    result.width = document.documentElement.clientWidth;
                }
                else{
                    result.width = self.innerWidth;
                }
                result.height = self.innerHeight;
            }
            else if(document.documentElement && document.documentElement.clientHeight){
                result.width = document.documentElement.clientWidth;
                result.height = document.documentElement.clientHeight;
            }
            else if(document.body){
                result.width = document.body.clientWidth;
                result.height = document.body.clientHeight;
            }
            return result;
        },
        resizeDialog : function(){
            if($('overlay_Div'))
            {
    	      var windowSize = Builder.getWindowSize();
              var CustomSize = 0;
              if($('container').getSize().y > windowSize.height)
              {
                    CustomSize = $('container').getSize().y;
              }else{
                    CustomSize = windowSize.height;
              }            
              
                $('overlay_Div').setStyles({
                    'height' : CustomSize,
                    'width' : windowSize.width
                });
                if($('overlay_innerDiv'))
                {
                    var innerDivSize = $('overlay_innerDiv').getSize();
                    $('overlay_innerDiv').setStyles({
                        'top' : (windowSize.height / 2) - (innerDivSize.y / 2),
                        'left' : (windowSize.width / 2) - (innerDivSize.x / 2)
                    });
                }
            }
        }
	}
var BuilderClasses = {
        CancelButtonText : {  },
        OKButtonText : {  },
        PrintText : {  },
        TipAFText : {  },      
        language : function(){  
            var LanguageDialogDiv = new Element('div', {
                'class': 'LanguageDialogDiv'
                }
            );   
            var LanguageButtons = new Element('div', {
                'class': 'LanguageButtons'
                }
            );
            var GlobeImage = new Element('img', {
                'class': 'languageGlobe',
                'src' : '/extension/all2e/design/all2e_design/images/content/globe.png'
                }
            );
            Builder.dialogBox.adopt(LanguageDialogDiv);
            LanguageDialogDiv.adopt(GlobeImage, LanguageButtons);
            DeutschButton = BuilderClasses.LanguageButton("deutsch", "/de", LanguageButtons);
            EnglishButton = BuilderClasses.LanguageButton("english", "/en", LanguageButtons);
            CancelButton = BuilderClasses.CustomButton(BuilderClasses.CancelButtonText, "click", Builder.destroyDialog, LanguageDialogDiv);
            
        },
        LanguageButton : function(language, url, ParentElement) {
            var BreakDiv = new Element('div', {
                'class': 'break'
                }
            );
            var Button = new Element('div', {
                'class': 'LanguageButton'
                }
            );
            var Text = new Element('span', {
                'class': 'LanguageText left'
                }
            );
            var Arrow = new Element('div', {
                'class': 'LanguageArrow left'
                }
            );
            Button.addEvent('click', function(){
                window.location.href = url;
            });

            Text.set('html', language);
            
            Button.adopt(Arrow, Text, BreakDiv);
            ParentElement.adopt(Button);

            return Button;
        },
        exportbox : function(){
            var ExportDialogDiv = new Element('div', {
                'class': 'ExportDialogDiv'
                }
            );
            var ExportButtons = new Element('div', {
                'class': 'ExportButtons'
                }
            );            
            var ExportImage = new Element('img', {
                'class': 'ExportImage',
                'src' : '/extension/all2e/design/all2e_design/images/content/export.png'
                }
            );   
            var BreakDiv = new Element('div', {
                'class': 'break'
                }
            );            
            Builder.dialogBox.adopt(ExportDialogDiv);
            ExportDialogDiv.adopt(ExportImage, ExportButtons); 
            ExportPrint = BuilderClasses.ExportButton(BuilderClasses.PrintText, "/extension/all2e/design/all2e_design/images/all2e_dialogbox/lightbox_print.png", "/" + Builder.SiteInfo.Language + "/layout/set/print/" + Builder.SiteInfo.URL, ExportButtons);
        //    ExportTAF = BuilderClasses.ExportButton(BuilderClasses.TipAFText, "/extension/all2e/design/all2e_design/images/all2e_dialogbox/lightbox_tipafriend.png", "javascript:{ Builder.destroyDialog(); Builder.BuildDialog('TipAFriendBox'); }", ExportButtons);
            ExportQR = BuilderClasses.ExportButton("PDF", "/extension/all2e/design/all2e_design/images/all2e_dialogbox/lightbox_pdf.png", "/" + "content/pdf/" + Builder.SiteInfo.NodeID, ExportButtons);
            ExportDialogDiv.adopt(BreakDiv);
            CancelButton = BuilderClasses.CustomButton(BuilderClasses.CancelButtonText, "click", Builder.destroyDialog, ExportDialogDiv);
                        
        },
        ExportButton : function(Type, image, url, ParentElement) {
            var Button = new Element('div', {
                'class': 'ExportButton left'
                }
            );
            var Text = new Element('span', {
                'class': 'ExportText'
                }
            );
            var Image = new Element('img', {
                'class': 'ExportImage',
                'src' : image
                }
            );
            var ButtonTop = new Element('div', {
                'class': 'ExportButtonTop'
                }
            );
            var ButtonBottom = new Element('div', {
                'class': 'ExportButtonButtom'
                }
            );
            Button.addEvent('click', function(){
                window.location.href = url;
            });
            Text.set('html', Type);            
            ButtonTop.adopt(Image);
            ButtonBottom.adopt(Text);

            Button.adopt(ButtonTop, ButtonBottom);
            ParentElement.adopt(Button);

            return Button;
        }, 
        TipAFriendBox : function()
        {
            var TAFDialogDiv = new Element('div', {
                'class': 'TAFDialogDiv'
                }
            );
            var TAFInputs = new Element('div', {
                'class': 'TAFInputs'
                }
            );            
            var TAFImage = new Element('img', {
                'class': 'TAFImage',
                'src' : '/extension/all2e/design/all2e_design/images/content/taf.png'
                }
            );   
            var HideSubmit = new Element('input', {
                "type" : "submit",
                "styles" : { "display" : "none" }
                }
            );
            var BreakDiv = new Element('div', {
                'class': 'break'
                }
            );
            Builder.dialogBox.adopt(TAFDialogDiv);
            Form = BuilderClasses.CustomForm("/content/tipafriend/","post",TAFDialogDiv)
            YourName = BuilderClasses.CustomInput("text", "YourName", Form);
            YourEmail = BuilderClasses.CustomInput("text", "YourEmail", Form);
            YourEmail = BuilderClasses.CustomInput("text", "ReceiversName", Form);
            YourEmail = BuilderClasses.CustomInput("text", "ReceiversEmail", Form);
            HiddenNode = BuilderClasses.CustomInput("hidden", "NodeID", Form, Builder.SiteInfo.NodeID); 
            Form.adopt(HideSubmit);
            SubmitButton = BuilderClasses.CustomButton("Absenden", "click", function(){ Form.submit(); }, Form, "TAFButtons");
            CancelButton = BuilderClasses.CustomButton(BuilderClasses.CancelButtonText, "click", Builder.destroyDialog, Form, "TAFButtons");

        },
        CustomInput : function(Type, Name, ParentElement, value){
            var Input = new Element('input', {
                'class': 'Input',
                'name' : Name,
                'type' : Type,
                'value' : value
                }
            );
            ParentElement.adopt(Input);
            
            return Input;
        },       
        CustomForm : function(action, method, ParentElement){
            var Form = new Element('form', {
                'method' : method,
                'action' : action
                }
            );
            ParentElement.adopt(Form);
            
            return Form;
        }, 
        CustomButton : function(Text, Event, doFunction, ParentElement, css){
            if(!css)
            {
                css = "Button"
            }
            
            var Button = new Element('div', {
                'class': css
                }
            );            
            Button.set('html', Text);
            Button.addEvent(Event, doFunction);        
            ParentElement.adopt(Button);   
        }
    }
window.addEvent("resize", Builder.resizeDialog);

