LightboxOptions=Object.extend({fileLoadingImage:"/addons/lightbox/loading.gif",fileBottomNavCloseImage:"/addons/lightbox/closelabel.gif",fileBottomNavOpenImage:"/addons/lightbox/openlabel.gif",overlayOpacity:0.8,animate:true,resizeSpeed:9,borderSize:10,labelImage:"Kép: ",labelOf:"/",openLabel:"Megnyitás nagy méretben"},window.LightboxOptions||{});
var Lightbox=Class.create();
Lightbox.prototype={imageArray:[],activeImage:undefined,initialize:function(){this.updateImageList();
this.keyboardAction=this.keyboardAction.bindAsEventListener(this);
if(LightboxOptions.resizeSpeed>10){LightboxOptions.resizeSpeed=10}if(LightboxOptions.resizeSpeed<1){LightboxOptions.resizeSpeed=1}this.resizeDuration=LightboxOptions.animate?((11-LightboxOptions.resizeSpeed)*0.15):0;
this.overlayDuration=LightboxOptions.animate?0.2:0;
var b=(LightboxOptions.animate?250:1)+"px";
var a=$$("body")[0];
a.appendChild(Builder.node("div",{id:"overlay"}));
a.appendChild(Builder.node("div",{id:"lightbox"},[Builder.node("div",{id:"outerImageContainer"},Builder.node("div",{id:"imageContainer"},[Builder.node("img",{id:"lightboxImage"}),Builder.node("div",{id:"hoverNav"},[Builder.node("a",{id:"prevLink",href:"#"}),Builder.node("a",{id:"nextLink",href:"#"})]),Builder.node("div",{id:"loading"},Builder.node("a",{id:"loadingLink",href:"#"},Builder.node("img",{src:LightboxOptions.fileLoadingImage})))])),Builder.node("div",{id:"imageDataContainer"},Builder.node("div",{id:"imageData"},[Builder.node("div",{id:"imageDetails"},[Builder.node("span",{id:"caption"}),Builder.node("span",{id:"numberDisplay"})]),Builder.node("div",{id:"bottomNav"},[Builder.node("a",{id:"bottomNavClose",href:"#"},Builder.node("img",{src:LightboxOptions.fileBottomNavCloseImage})),Builder.node("a",{id:"bottomNavOpen",href:"",title:LightboxOptions.openLabel},Builder.node("img",{src:LightboxOptions.fileBottomNavOpenImage}))])]))]));
$("overlay").hide().observe("click",(function(){this.end()}).bind(this));
$("lightbox").hide().observe("click",(function(d){if(d.element().id=="lightbox"){this.end()}}).bind(this));
$("outerImageContainer").setStyle({width:b,height:b});
$("prevLink").observe("click",(function(d){d.stop();
this.changeImage(this.activeImage-1)}).bindAsEventListener(this));
$("nextLink").observe("click",(function(d){d.stop();
this.changeImage(this.activeImage+1)}).bindAsEventListener(this));
$("loadingLink").observe("click",(function(d){d.stop();
this.end()}).bind(this));
$("bottomNavClose").observe("click",(function(d){d.stop();
$("bottomNavOpen").hide();
this.end()}).bind(this));
var c=this;
(function(){var d="overlay lightbox outerImageContainer imageContainer lightboxImage hoverNav prevLink nextLink loading loadingLink imageDataContainer imageData imageDetails caption numberDisplay bottomNav bottomNavClose";
$w(d).each(function(e){c[e]=$(e)})}).defer()},updateImageList:function(){this.updateImageList=Prototype.emptyFunction;
document.observe("click",(function(a){var b=a.findElement("a[rel^=lightbox]")||a.findElement("area[rel^=lightbox]");
if(b){a.stop();
this.start(b)}}).bind(this))},start:function(f){$$("select","object","embed").each(function(g){g.style.visibility="hidden"});
var c=this.getPageSize();
$("overlay").setStyle({width:c[0]+"px",height:c[1]+"px"});
new Effect.Appear(this.overlay,{duration:this.overlayDuration,from:0,to:LightboxOptions.overlayOpacity});
this.imageArray=[];
var b=0;
if((f.rel=="lightbox")){this.imageArray.push([f.attributes.imgurl.value,f.title,f.href])}else{this.imageArray=$$(f.tagName+'[imgurl][rel="'+f.rel+'"]').collect(function(g){return[g.attributes.imgurl.value,g.title,g.href]}).uniq();
while(this.imageArray[b][0]!=f.attributes.imgurl.value){b++}}var d=document.viewport.getScrollOffsets();
var e=d[1]+(document.viewport.getHeight()/10);
var a=d[0];
this.lightbox.setStyle({top:e+"px",left:a+"px"}).show();
this.changeImage(b)},changeImage:function(b){this.activeImage=b;
if(LightboxOptions.animate){this.loading.show()}this.lightboxImage.hide();
this.hoverNav.hide();
this.prevLink.hide();
this.nextLink.hide();
this.imageDataContainer.setStyle({opacity:0.0001});
this.numberDisplay.hide();
var a=new Image();
a.onload=(function(){this.lightboxImage.src=this.imageArray[this.activeImage][0];
this.resizeImageContainer(a.width,a.height)}).bind(this);
a.src=this.imageArray[this.activeImage][0]},resizeImageContainer:function(i,k){var d=this.outerImageContainer.getWidth();
var c=this.outerImageContainer.getHeight();
var j=(i+LightboxOptions.borderSize*2);
var g=(k+LightboxOptions.borderSize*2);
var f=(j/d)*100;
var b=(g/c)*100;
var e=d-j;
var a=c-g;
if(a!=0){new Effect.Scale(this.outerImageContainer,b,{scaleX:false,duration:this.resizeDuration,queue:"front"})}if(e!=0){new Effect.Scale(this.outerImageContainer,f,{scaleY:false,duration:this.resizeDuration,delay:this.resizeDuration})}var h=0;
if((a==0)&&(e==0)){h=100;
if(Prototype.Browser.IE){h=250}}(function(){this.prevLink.setStyle({height:k+"px"});
this.nextLink.setStyle({height:k+"px"});
this.imageDataContainer.setStyle({width:j+"px"});
this.showImage()}).bind(this).delay(h/1000)},showImage:function(){this.loading.hide();
new Effect.Appear(this.lightboxImage,{duration:this.resizeDuration,queue:"end",afterFinish:(function(){this.updateDetails()}).bind(this)});
this.preloadNeighborImages()},updateDetails:function(){if(this.imageArray[this.activeImage][1]!=""){this.caption.update(this.imageArray[this.activeImage][1]).show()}if(this.imageArray.length>1){this.numberDisplay.update(LightboxOptions.labelImage+" "+(this.activeImage+1)+" "+LightboxOptions.labelOf+"  "+this.imageArray.length).show()}new Effect.Parallel([new Effect.SlideDown(this.imageDataContainer,{sync:true,duration:this.resizeDuration,from:0,to:1}),new Effect.Appear(this.imageDataContainer,{sync:true,duration:this.resizeDuration})],{duration:this.resizeDuration,afterFinish:(function(){var a=this.getPageSize();
this.overlay.setStyle({height:a[1]+"px"});
this.updateNav()}).bind(this)})},updateNav:function(){this.hoverNav.show();
if(this.imageArray[this.activeImage][2]!='') { $("bottomNavOpen").show().href=this.imageArray[this.activeImage][2]; }
if(this.activeImage>0){this.prevLink.show()}if(this.activeImage<(this.imageArray.length-1)){this.nextLink.show()}this.enableKeyboardNav()},enableKeyboardNav:function(){document.observe("keydown",this.keyboardAction)},disableKeyboardNav:function(){document.stopObserving("keydown",this.keyboardAction)},keyboardAction:function(c){var d=c.keyCode;
var a;
if(c.DOM_VK_ESCAPE){a=c.DOM_VK_ESCAPE}else{a=27}var b=String.fromCharCode(d).toLowerCase();
if(b.match(/x|o|c/)||(d==a)){this.end()}else{if((b=="p")||(d==37)){if(this.activeImage!=0){this.disableKeyboardNav();
this.changeImage(this.activeImage-1)}}else{if((b=="n")||(d==39)){if(this.activeImage!=(this.imageArray.length-1)){this.disableKeyboardNav();
this.changeImage(this.activeImage+1)}}}}},preloadNeighborImages:function(){var b,a;
if(this.imageArray.length>this.activeImage+1){b=new Image();
b.src=this.imageArray[this.activeImage+1][0]}if(this.activeImage>0){a=new Image();
a.src=this.imageArray[this.activeImage-1][0]}},end:function(){this.disableKeyboardNav();
this.lightbox.hide();
new Effect.Fade(this.overlay,{duration:this.overlayDuration});
$$("select","object","embed").each(function(a){a.style.visibility="visible"})},getPageSize:function(){var c,b;
if(window.innerHeight&&window.scrollMaxY){c=window.innerWidth+window.scrollMaxX;
b=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){c=document.body.scrollWidth;
b=document.body.scrollHeight}else{c=document.body.offsetWidth;
b=document.body.offsetHeight}}var a,d;
if(self.innerHeight){if(document.documentElement.clientWidth){a=document.documentElement.clientWidth}else{a=self.innerWidth}d=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientWidth;
d=document.documentElement.clientHeight}else{if(document.body){a=document.body.clientWidth;
d=document.body.clientHeight}}}if(b<d){pageHeight=d}else{pageHeight=b}if(c<a){pageWidth=c}else{pageWidth=a}return[pageWidth,pageHeight]}};
document.observe("dom:loaded",function(){new Lightbox()});

