var photoGalleries=new Object();var noThumbnailPath="";var noImagePath="";function photoGallery(b,a,e,d,c){this.instance=b;this.id=a;this.title=e;this.path=d;this.link=c;this.showTitle=true;this.showDescription=true;this.showChooser=true;this.showSlideshowControls=true;this.showStatistics=true;this.autoStartSlideshow=false;this.maxWidth=10000;this.maxHeight=10000;this.currentPhotoId=0;this.currentIndex=0;this.chooserButtonTimer;this.chooserButtonDirection;this.slideshowStarted=false;this.slideshowTimer;this.slideshowSpeed=5;this.photos=new Object();this.photoCount=0;this._firstPhotoId=0;this._lastPhotoId=0;this.addPhoto=function(h,o,f,g,n,i,k,l,j,m){this.photos[String(h)]=new photo(h,o,f,g,n,i,k,l,j,m,this.path);this.photoCount++};this.place=function(j,K){var i;var L;var N;var M;var k;var v=window.document.createElement("div");v.id="PhotoGallery"+this.instance;$(v).addClassName("PhotoGallery");$(j).appendChild(v);if(this.showChooser){var m=window.document.createElement("div");m=$(m);m.id="PhotoChooser"+this.instance;m.addClassName("PhotoChooser");var q=window.document.createElement("table");q=$(q);q.id="PhotoChooserTable"+this.instance;q.addClassName("PhotoChooserTable");q.writeAttribute("cellpadding","0");q.writeAttribute("cellspacing","0");q.writeAttribute("align","center");m.appendChild(q);L=window.document.createElement("tbody");N=window.document.createElement("tr");M=window.document.createElement("td");M=$(M);M.addClassName("PhotoChooserControlCell");var o=window.document.createElement("img");o=$(o);o.id="PhotoChooserPrev"+this.instance;o.store("instance",this.instance);o.writeAttribute("alt","<");o.addClassName("PhotoChooserControl");o.src="/images/buttons/button_paging_previous.jpg";o.observe("mousedown",function(O){photoGalleries[O.target.retrieve("instance")].chooserButtonDown(-1)});o.observe("mouseup",function(O){photoGalleries[O.target.retrieve("instance")].chooserButtonUp()});M.appendChild(o);N.appendChild(M);M=window.document.createElement("td");$(M).addClassName("PhotoChooserWindowCell");var s=window.document.createElement("div");s=$(s);s.id="PhotoChooserWindow"+this.instance;s.addClassName("PhotoChooserWindow");var r=window.document.createElement("span");r=$(r);r.id="PhotoChooserThumbnails"+this.instance;r.addClassName("PhotoChooserThumbnails");s.appendChild(r);M.appendChild(s);N.appendChild(M);M=window.document.createElement("td");$(M).addClassName("PhotoChooserControlCell");var n=window.document.createElement("img");n=$(n);n.id="PhotoChooserNext"+this.instance;n.store("instance",this.instance);n.writeAttribute("alt",">");n.addClassName("PhotoChooserControl");n.src="/images/buttons/button_paging_next.jpg";n.observe("mousedown",function(O){photoGalleries[O.target.retrieve("instance")].chooserButtonDown(1)});n.observe("mouseup",function(O){photoGalleries[O.target.retrieve("instance")].chooserButtonUp()});N.appendChild(M);M.appendChild(n);L.appendChild(N);q.appendChild(L);i=window.document.createElement("div");$(i).setStyle({clear:"both"});v.appendChild(i);var l;var h;var f;var g;for(photoId in this.photos){l=this.photos[photoId];h=window.document.createElement("a");h=$(h);h.id="PhotoChooserThumbnailLink"+this.instance+"_"+photoId;h.href="javascript:photoGalleries["+this.instance+"].photoSwitch("+photoId+")";h.addClassName("PhotoChooserThumbnailLink");h.setOpacity(0.5);g=window.document.createElement("img");g.id="PhotoChooserThumbnailImage"+this.instance+"_"+photoId;g=$(g);g.store("instance",this.instance);g.store("photoId",photoId);g.src=l.thumbnailPath();g.writeAttribute("alt","");g.observe("mouseover",function(O){photoGalleries[O.target.retrieve("instance")].chooserThumbnailOver(O.target.retrieve("photoId"))});g.observe("mouseout",function(O){photoGalleries[O.target.retrieve("instance")].chooserThumbnailOut(O.target.retrieve("photoId"))});g.addClassName("PhotoChooserThumbnailImage");h.appendChild(g);r.appendChild(h)}v.appendChild(m)}var C=window.document.createElement("div");C.id="PhotoPlaceholder"+this.instance;$(C).addClassName("PhotoPlaceholder");v.appendChild(C);var w=window.document.createElement("div");w=$(w);w.id="PhotoHolderEven"+this.instance;w.addClassName("PhotoHolder");C.appendChild(w);if(this.showTitle){var E=window.document.createElement("div");E=$(E);E.id="PhotoTitleEven"+this.instance;E.addClassName("PhotoTitle");w.appendChild(E)}var A=window.document.createElement("a");A.id="PhotoLinkEven"+this.instance;w.appendChild(A);var y=window.document.createElement("img");y=$(y);y.id="PhotoImageEven"+this.instance;y.src="/images/icons/image-loading.gif";y.writeAttribute("alt","");y.writeAttribute("border","0");A.appendChild(y);if(this.showDescription){var t=window.document.createElement("div");t=$(t);t.id="PhotoDescriptionEven"+this.instance;t.addClassName("PhotoDescription");w.appendChild(t)}var x=window.document.createElement("div");x=$(x);x.id="PhotoHolderOdd"+this.instance;x.addClassName("PhotoHolder");x.setStyle({display:"none"});C.appendChild(x);if(this.showTitle){var F=window.document.createElement("div");F=$(F);F.id="PhotoTitleOdd"+this.instance;F.addClassName("PhotoTitle");x.appendChild(F)}var B=window.document.createElement("a");B.id="PhotoLinkOdd"+this.instance;x.appendChild(B);var z=window.document.createElement("img");z.id="PhotoImageOdd"+this.instance;z=$(z);z.src="/images/icons/image-loading.gif";z.writeAttribute("alt","");z.writeAttribute("border","0");B.appendChild(z);if(this.showDescription){var u=window.document.createElement("div");u=$(u);u.id="PhotoDescriptionOdd"+this.instance;u.addClassName("PhotoDescription");x.appendChild(u)}if(this.showSlideshowControls){var G=window.document.createElement("div");G=$(G);G.id="SlideshowControls"+this.instance;G.addClassName("SlideshowControls");v.appendChild(G);var H=window.document.createElement("table");H=$(H);H.id="SlideshowControlsTable"+this.instance;H.addClassName("SlideshowControlsTable");H.writeAttribute("cellpadding","0");H.writeAttribute("cellspacing","0");H.writeAttribute("width","100%");G.appendChild(H);L=window.document.createElement("tbody");N=window.document.createElement("tr");H.appendChild(N);M=window.document.createElement("td");M=$(M);M.writeAttribute("align","left");M.addClassName("SlideshowControlCell");k=window.document.createElement("a");k=$(k);k.href="javascript:photoGalleries["+this.instance+"].slideshowAdvance(-1, true)";k.addClassName("SlideshowControl");k.update("&lt; Previous");M.appendChild(k);N.appendChild(M);M=window.document.createElement("td");M=$(M);M.writeAttribute("align","center");M.addClassName("SlideshowControlCell");var J=window.document.createElement("div");J=$(J);J.id="SlideshowToggle"+this.instance;J.addClassName("SlideshowToggle");M.appendChild(J);k=window.document.createElement("a");k=$(k);k.id="SlideshowToggleLink"+this.instance;k.href="javascript:photoGalleries["+this.instance+"].slideshowToggle()";k.addClassName("SlideshowToggleLink");k.addClassName("SlideshowControl");k.update("Start Slideshow");J.appendChild(k);var I=window.document.createElement("div");I=$(I);I.id="SlideshowSpeedControls"+this.instance;I.addClassName("SlideshowSpeedControls");I.update("Speed: ");M.appendChild(I);k=window.document.createElement("a");k=$(k);k.id="SlideshowSpeed1";k.href="javascript:photoGalleries["+this.instance+"].slideshowSpeedChange(1)";k.addClassName("SlideshowSpeedControl");k.update("Slow");I.appendChild(k);k=window.document.createElement("a");k=$(k);k.id="SlideshowSpeed2";k.href="javascript:photoGalleries["+this.instance+"].slideshowSpeedChange(5)";k.addClassName("SlideshowSpeedControl");k.addClassName("Selected");k.update("Medium");I.appendChild(k);k=window.document.createElement("a");k=$(k);k.id="SlideshowSpeed3";k.href="javascript:photoGalleries["+this.instance+"].slideshowSpeedChange(10)";k.addClassName("SlideshowSpeedControl");k.update("Fast");I.appendChild(k);N.appendChild(M);M=window.document.createElement("td");M=$(M);M.writeAttribute("align","right");M.addClassName("SlideshowControlCell");k=window.document.createElement("a");k=$(k);k.href="javascript:photoGalleries["+this.instance+"].slideshowAdvance(1, true)";k.addClassName("SlideshowControl");k.update("Next &gt;");M.appendChild(k);N.appendChild(M);L.appendChild(N);H.appendChild(L)}if(this.showStatistics){var D=window.document.createElement("div");D.id="PhotoStatistics"+this.instance;$(D).addClassName("PhotoStatistics");$(D).update('Photo <span id="PhotoCount'+this.instance+'">0</span> of '+this.photoCount+' from <a href="'+this.link+'">'+this.title+"</a>");v.appendChild(D)}this.preloadPhotos();if(K==null){K=this.firstPhotoId()}this.photoSwitch(K);if(this.autoStartSlideshow){this.slideshowStart()}};this.preloadPhotos=function(){var f=0;var g;for(photoId in this.photos){this.photos[photoId].preloadedImage=window.document.createElement("img");this.photos[photoId].preloadedImage.src=this.photos[photoId].largePath();$(this.photos[photoId].preloadedImage).setStyle({position:"absolute",top:-2000,left:-2000});$("PhotoGallery"+this.instance).appendChild(this.photos[photoId].preloadedImage)}};this.firstPhotoId=function(){if(this._firstPhotoId!=0){return this._firstPhotoId}for(var f in this.photos){this._firstPhotoId=f;return f}};this.lastPhotoId=function(){if(this._firstPhotoId!=0){return this._lastPhotoId}var f;for(var g in this.photos){f=g}this._lastPhotoId=f;return f};this.photoSwitch=function(j){this.currentIndex++;var f=this.currentIndex%2==0;var g=this.photos[j];var l=$("PhotoLink"+(f?"Even":"Odd")+this.instance);var k=$("PhotoImage"+(f?"Even":"Odd")+this.instance);var m=$("PhotoTitle"+(f?"Even":"Odd")+this.instance);var i=$("PhotoDescription"+(f?"Even":"Odd")+this.instance);var h=$("PhotoCount"+this.instance);if(g.original){l.href=g.originalPath();l.title="View fill-sized original image"}else{l.href="#";l.title="Larger image unavailable"}k.src=g.largePath();$(k).setStyle({height:"auto",width:"auto"});if(m){m.update(g.title)}if(i){i.update(g.description)}this.currentPhotoId=j;if($("PhotoChooser"+this.instance)){for(p in this.photos){if(this.photos[p].id==this.currentPhotoId){$("PhotoChooserThumbnailLink"+this.instance+"_"+this.photos[p].id).setOpacity(1);$("PhotoChooserThumbnailLink"+this.instance+"_"+this.photos[p].id).addClassName("Selected")}else{$("PhotoChooserThumbnailLink"+this.instance+"_"+this.photos[p].id).setOpacity(0.5);$("PhotoChooserThumbnailLink"+this.instance+"_"+this.photos[p].id).removeClassName("Selected")}}}new Effect.Fade("PhotoHolder"+(f?"Odd":"Even")+this.instance,{queue:"front",duration:0.8});new Effect.Appear("PhotoHolder"+(f?"Even":"Odd")+this.instance,{queue:"end",duration:0.8});window.setTimeout("photoGalleries["+this.instance+"].resizePhoto("+j+")",850);window.setTimeout("photoGalleries["+this.instance+"].resizePhoto("+j+")",3500);if(h){h.update(g.rank)}};this.resizePhoto=function(r){var g=this.currentIndex%2==0;var l=$("PhotoGallery"+this.instance);if(l==null){return}var s=$("PhotoImage"+(g?"Even":"Odd")+this.instance);if(s==null){return}var v=$(this.photos[r].preloadedImage);var h;if(v){h=v.getDimensions()}else{h=s.getDimensions()}var i=h.height;var j=h.width;var m=l.getWidth();var k=m-40;if(j>k){var w=j/k;if(w>1){var f=1/w;f=Math.floor(f*100)/100-0.005;$(s).setStyle({height:Math.round(i*f),width:+Math.round(j*f)})}}var n=$("PhotoHolder"+(g?"Even":"Odd")+this.instance);if(n==null){return}var t=$("PhotoPlaceholder"+this.instance);if(t==null){return}var o=n.getDimensions();var q=n.getHeight();var u=t.getHeight();if(u<q||u>q+60){new Effect.Morph(t,{style:"height:"+(q+20)+"px"})}};this.chooserButtonDown=function(f){window.clearInterval(this.chooserButtonTimer);this.chooserButtonDirection=f;this.chooserAdvance(f);this.chooserButtonTimer=window.setInterval("photoGalleries["+this.instance+"].chooserAdvance("+f+")",350)};this.chooserButtonUp=function(){window.clearInterval(this.chooserButtonTimer)};this.chooserAdvance=function(f){var g=3;var l=$("PhotoChooserWindow"+this.instance).positionedOffset()["left"];var n=$("PhotoChooserWindow"+this.instance).getWidth();var m=l+n;var i=$("PhotoChooserThumbnails"+this.instance).positionedOffset()["left"];var k=$("PhotoChooserThumbnails"+this.instance).getWidth();var j=i+k;var h=((n-50)*-f);if(f<0&&(i+h>=l)){h=l-i}if(f>0&&(j+h<=m)){h=m-j}if(h!=0){new Effect.Move("PhotoChooserThumbnails"+this.instance,{x:h,mode:"relative",duration:g,transition:Effect.Transitions.exponential})}};this.chooserThumbnailOver=function(f){if(this.currentPhotoId!=f){new Effect.Opacity("PhotoChooserThumbnailLink"+this.instance+"_"+f,{duration:0.5,from:0.5,to:1})}};this.chooserThumbnailOut=function(f){if(this.currentPhotoId!=f){new Effect.Opacity("PhotoChooserThumbnailLink"+this.instance+"_"+f,{duration:0.5,from:1,to:0.5})}};this.slideshowStart=function(){var f=2000;var g=6000;var h=f+((g-f)/9)*(10-this.slideshowSpeed);window.clearInterval(this.slideshowTimer);this.slideshowTimer=window.setInterval("photoGalleries["+this.instance+"].slideshowAdvance(1)",h);this.slideshowStarted=true;var i=$("SlideshowToggleLink"+this.instance);if(i){i.update("Stop Slideshow")}};this.slideshowStop=function(){window.clearInterval(this.slideshowTimer);this.slideshowStarted=false;$("SlideshowToggleLink"+this.instance).update("Start Slideshow")};this.slideshowToggle=function(){if(this.slideshowStarted){this.slideshowStop()}else{this.slideshowStart()}};this.slideshowAdvance=function(f,h){var g;if(arguments.length<2){h=false}if(f>0){g=this.photos[this.currentPhotoId].nextPhotoId;if(g==0){g=this.firstPhotoId()}}else{g=this.photos[this.currentPhotoId].previousPhotoId;if(g==0){g=this.lastPhotoId()}}this.photoSwitch(g);if(this.slideshowStarted&&h){this.slideshowStart()}};this.slideshowSpeedChange=function(f){this.slideshowSpeed=f;if(this.slideshowStarted){this.slideshowStart()}switch(f){case 1:$("SlideshowSpeed1").addClassName("Selected");$("SlideshowSpeed2").removeClassName("Selected");$("SlideshowSpeed3").removeClassName("Selected");break;case 5:$("SlideshowSpeed1").removeClassName("Selected");$("SlideshowSpeed2").addClassName("Selected");$("SlideshowSpeed3").removeClassName("Selected");break;case 10:$("SlideshowSpeed1").removeClassName("Selected");$("SlideshowSpeed2").removeClassName("Selected");$("SlideshowSpeed3").addClassName("Selected");break}}}function photo(d,k,a,b,j,e,g,h,f,i,c){this.id=d;this.title=k;this.description=a;this.extension=b;this.thumbnail=j;this.large=e;this.original=g;this.preloadedImage;this.previousPhotoId=h;this.nextPhotoId=f;this.rank=i;this.galleryPath=c;this.thumbnailPath=function(){if(!this.thumbnail){return noThumbnailPath}return this.galleryPath+"/"+this.id+"-thumbnail"+this.extension};this.largePath=function(){if(!this.large){return noImagePath}return this.galleryPath+"/"+this.id+"-large"+this.extension};this.originalPath=function(){if(!this.original){return""}return this.galleryPath+"/"+this.id+"-original"+this.extension}}Effect.Transitions.exponential=function(a){return 1-Math.pow(1-a,4)};var preloadedImages=new Object();function preloadImages(){var c=0;if(preloadedImages.length!=null){c=preloadedImages.length}for(var b=0;b<arguments.length;b++){preloadedImages[c]=new Image();preloadedImages[c].src=arguments[b];c++}}function resizeImage(a,d,c,b){if(b==null){b=$(a).src}var e=$(a+"resize_temp");if(e==null){e=new Element("img",{id:a+"resize_temp",src:b}).setStyle({position:"absolute",top:"-5000px"});$(document.body).insert(e);window.setTimeout("resizeImageCallback('"+a+"',"+d+","+c+")",250);return}}function resizeImageCallback(c,g,f,e){if(e==null){e=0}if(e>10){return}var h=$(c+"resize_temp");var d=h.getDimensions();if(d.height==0){window.setTimeout("resizeImage('"+c+"',"+g+","+f+","+(e+1)+")",250)}if(d.height>f||d.width>g){var b=d.height/f;var i=d.width/g;var a=0;if(b>1||i>1){if(b>i){a=1/b}else{a=1/i}a=Math.floor(a*100)/100-0.005;$(c).setStyle({height:Math.round(d.height*a)+"px",width:+Math.round(d.width*a)+"px"})}}h.remove()};
