function WindowSize(){this.w=0;this.h=0;return this.update()}WindowSize.prototype.update=function(){var d=document;this.w=(window.innerWidth)?window.innerWidth:(d.documentElement&&d.documentElement.clientWidth)?d.documentElement.clientWidth:d.body.clientWidth;this.h=(window.innerHeight)?window.innerHeight:(d.documentElement&&d.documentElement.clientHeight)?d.documentElement.clientHeight:d.body.clientHeight;return this};function PageSize(){this.win=new WindowSize();this.w=0;this.h=0;return this.update()}PageSize.prototype.update=function(){var d=document;this.w=(window.innerWidth&&window.scrollMaxX)?window.innerWidth+window.scrollMaxX:(d.body.scrollWidth>d.body.offsetWidth)?d.body.scrollWidth:d.body.offsetWidt;this.h=(window.innerHeight&&window.scrollMaxY)?window.innerHeight+window.scrollMaxY:(d.body.scrollHeight>d.body.offsetHeight)?d.body.scrollHeight:d.body.offsetHeight;this.win.update();if(this.w<this.win.w){this.w=this.win.w}if(this.h<this.win.h){this.h=this.win.h}return this};function PagePos(){this.x=0;this.y=0;return this.update()}PagePos.prototype.update=function(){var d=document;this.x=(window.pageXOffset)?window.pageXOffset:(d.documentElement&&d.documentElement.scrollLeft)?d.documentElement.scrollLeft:(d.body)?d.body.scrollLeft:0;this.y=(window.pageYOffset)?window.pageYOffset:(d.documentElement&&d.documentElement.scrollTop)?d.documentElement.scrollTop:(d.body)?d.body.scrollTop:0;return this};function LightBox(a){var b=this;b._imgs=new Array();b._sets=new Array();b._wrap=null;b._box=null;b._img=null;b._open=-1;b._page=new PageSize();b._pos=new PagePos();b._zoomimg=null;b._expandable=false;b._expanded=false;b._funcs={"move":null,"up":null,"drag":null,"wheel":null,"dbl":null};b._level=1;b._curpos={x:0,y:0};b._imgpos={x:0,y:0};b._minpos={x:0,y:0};b._expand=a.expandimg;b._shrink=a.shrinkimg;b._resizable=a.resizable;b._timer=null;b._indicator=null;b._overall=null;b._openedset=null;b._prev=null;b._next=null;b._hiding=[];b._first=false;return b._init(a)}LightBox.prototype={_init:function(a){var b=this;var d=document;if(!d.getElementsByTagName){return}if(Browser.isMacIE){return b}var c=d.getElementsByTagName("a");for(var i=0;i<c.length;i++){var e=c[i];var f=b._imgs.length;var g=String(e.getAttribute("rel")).toLowerCase();if(!e.getAttribute("href")||!g.match("lightbox")){continue}b._imgs[f]={src:e.getAttribute("href"),w:-1,h:-1,title:"",cls:e.className,set:g};if(e.getAttribute("title")){b._imgs[f].title=e.getAttribute("title")}else{if(e.firstChild&&e.firstChild.getAttribute&&e.firstChild.getAttribute("title")){b._imgs[f].title=e.firstChild.getAttribute("title")}}e.onclick=b._genOpener(f);if(g!="lightbox"){if(!b._sets[g]){b._sets[g]=new Array()}b._sets[g].push(f)}}var h=d.getElementsByTagName("body")[0];b._wrap=b._createWrapOn(h,a.loadingimg);b._box=b._createBoxOn(h,a);b._img=b._box.firstChild;b._zoomimg=d.getElementById("actionImage");return b},_genOpener:function(a){var b=this;return function(){b._show(a);return false}},_createWrapOn:function(c,d){var e=this;if(!c){return null}var f=document.createElement("div");c.appendChild(f);f.id="overlay";f.style.display="none";f.style.position="fixed";f.style.top="0px";f.style.left="0px";f.style.zIndex="50";f.style.width="100%";f.style.height="100%";if(Browser.isWinIE){f.style.position="absolute"}Event.register(f,"click",function(a){e._close(a)});var g=new Image;g.onload=function(){var b=document.createElement("img");f.appendChild(b);b.id="loadingImage";b.src=g.src;b.style.position="absolute";b.style.display="";b.style.left=((e._page.h-10)/2)+"px";e._set_cursor(b);Event.register(b,"click",function(a){e._close(a)});g.onload=function(){}};if(d!=""){g.src=d}return f},_createBoxOn:function(b,c){var d=this;if(!b){return null}var e=document.createElement("div");b.appendChild(e);e.id="lightbox";e.style.display="none";e.style.position="absolute";e.style.zIndex="60";var f=document.createElement("img");e.appendChild(f);f.id="lightboxImage";d._set_cursor(f);Event.register(f,"mouseover",function(){d._show_action()});Event.register(f,"mouseout",function(){d._hide_action()});Event.register(f,"click",function(a){d._close(a)});if(c.previmg){var g=document.createElement("img");e.appendChild(g);g.id="prevLink";g.style.display="none";g.style.position="absolute";g.style.left="9px";g.style.zIndex="70";g.src=c.previmg;d._prev=g;Event.register(g,"mouseover",function(){d._show_action()});Event.register(g,"click",function(){d._show_next(-1)})}if(c.nextimg){var h=document.createElement("img");e.appendChild(h);h.id="nextLink";h.style.display="none";h.style.position="absolute";h.style.right="9px";h.style.zIndex="70";h.src=c.nextimg;d._next=h;Event.register(h,"mouseover",function(){d._show_action()});Event.register(h,"click",function(){d._show_next(+1)})}var i=document.createElement("img");e.appendChild(i);i.id="actionImage";i.style.display="none";i.style.position="absolute";i.style.top="15px";i.style.left="15px";i.style.zIndex="70";d._set_cursor(i);i.src=d._expand;Event.register(i,"mouseover",function(){d._show_action()});Event.register(i,"click",function(){d._zoom()});Event.register(window,"resize",function(){d._set_size(true)});if(c.closeimg){var j=document.createElement("img");e.appendChild(j);j.id="closeButton";j.style.display="inline";j.style.position="absolute";j.style.right="9px";j.style.top="10px";j.style.zIndex="80";j.src=c.closeimg;d._set_cursor(j);Event.register(j,"click",function(a){d._close(a)})}var k=document.createElement("span");e.appendChild(k);k.id="lightboxCaption";k.style.display="none";k.style.position="absolute";k.style.zIndex="80";if(!c.effectpos){c.effectpos={x:0,y:0}}else{if(c.effectpos.x==""){c.effectpos.x=0}if(c.effectpos.y==""){c.effectpos.y=0}}var l=new Image;l.onload=function(){var a=document.createElement("img");e.appendChild(a);a.id="effectImage";a.src=l.src;if(c.effectclass){a.className=c.effectclass}a.style.position="absolute";a.style.display="none";a.style.left=[c.effectpos.x,"px"].join("");a.style.top=[c.effectpos.y,"px"].join("");a.style.zIndex="90";d._set_cursor(a);Event.register(a,"click",function(){a.style.display="none"})};if(c.effectimg!=""){l.src=c.effectimg}if(d._resizable){var m=document.createElement("div");b.appendChild(m);m.id="lightboxOverallView";m.style.display="none";m.style.position="absolute";m.style.zIndex="70";d._overall=m;var n=document.createElement("div");b.appendChild(n);n.id="lightboxIndicator";n.style.display="none";n.style.position="absolute";n.style.zIndex="80";d._indicator=n}return e},_set_photo_size:function(){var a=this;if(a._open==-1){return}var b={w:a._page.win.w-30,h:a._page.win.h-30};var c={x:15,y:15};var d={p:9,n:9,y:0};if(!a._expanded){var e={w:a._imgs[a._open].w,h:a._imgs[a._open].h};var f=1;if((e.w>=b.w||e.h>=b.h)&&e.h&&e.w){f=((b.w/e.w)<(b.h/e.h))?b.w/e.w:b.h/e.h}a._img.width=Math.floor(e.w*f);a._img.height=Math.floor(e.h*f);a._expandable=(f<1)?true:false;if(a._resizable){a._expandable=true}if(Browser.isWinIE){a._box.style.display="block"}a._imgpos.x=a._pos.x+(b.w-a._img.width)/2;a._imgpos.y=a._pos.y+(b.h-a._img.height)/2;d.y=Math.floor(a._img.height/2)-10;a._show_caption(true);a._show_overall(false)}else{var g=parseInt(a._imgs[a._open].w*a._level);var h=parseInt(a._imgs[a._open].h*a._level);a._minpos.x=a._pos.x+b.w-g;a._minpos.y=a._pos.y+b.h-h;if(g<=b.w){a._imgpos.x=a._pos.x+(b.w-g)/2}else{if(a._imgpos.x>a._pos.x){a._imgpos.x=a._pos.x}else{if(a._imgpos.x<a._minpos.x){a._imgpos.x=a._minpos.x}}c.x=15+a._pos.x-a._imgpos.x;d.p=a._pos.x-a._imgpos.x-5;d.n=g-a._page.win.w+a._imgpos.x+25;if(Browser.isWinIE){d.n-=10}}if(h<=b.h){a._imgpos.y=a._pos.y+(b.h-h)/2;d.y=Math.floor(a._img.height/2)-10}else{if(a._imgpos.y>a._pos.y){a._imgpos.y=a._pos.y}else{if(a._imgpos.y<a._minpos.y){a._imgpos.y=a._minpos.y}}c.y=15+a._pos.y-a._imgpos.y;d.y=Math.floor(b.h/2)-10+a._pos.y-a._imgpos.y}a._img.width=g;a._img.height=h;a._show_caption(false);a._show_overall(true)}a._box.style.left=[a._imgpos.x,"px"].join("");a._box.style.top=[a._imgpos.y,"px"].join("");a._zoomimg.style.left=[c.x,"px"].join("");a._zoomimg.style.top=[c.y,"px"].join("");a._wrap.style.left=a._pos.x;if(a._prev&&a._next){a._prev.style.left=[d.p,"px"].join("");a._next.style.right=[d.n,"px"].join("");a._prev.style.top=a._next.style.top=[d.y,"px"].join("")}},_show_overall:function(a){var b=this;if(b._overall==null){return}if(a){if(b._open==-1){return}var c=100;var d={w:0,h:0,x:0,y:0};var e={w:0,h:0,x:0,y:0};var f={w:b._img.width,h:b._img.height};var g={w:b._page.win.w-30,h:b._page.win.h-30};var h=f.w;if(h<f.h){h=f.h}if(h<g.w){h=g.w}if(h<g.h){h=g.h}if(h<1){return}d.w=parseInt(f.w/h*c);d.h=parseInt(f.h/h*c);e.w=parseInt(g.w/h*c);e.h=parseInt(g.h/h*c);d.x=b._pos.x+g.w-c-20;d.y=b._pos.y+g.h-c-20;e.x=d.x-parseInt((b._imgpos.x-b._pos.x)/h*c);e.y=d.y-parseInt((b._imgpos.y-b._pos.y)/h*c);b._overall.style.left=[d.x,"px"].join("");b._overall.style.top=[d.y,"px"].join("");b._overall.style.width=[d.w,"px"].join("");b._overall.style.height=[d.h,"px"].join("");b._indicator.style.left=[e.x,"px"].join("");b._indicator.style.top=[e.y,"px"].join("");b._indicator.style.width=[e.w,"px"].join("");b._indicator.style.height=[e.h,"px"].join("");b._overall.style.display="block";b._indicator.style.display="block"}else{b._overall.style.display="none";b._indicator.style.display="none"}},_set_size:function(a){var b=this;if(b._open==-1){return}b._page.update();b._pos.update();var c=b._wrap.firstChild;if(c){var d=(b._page.win.h-c.height)/2;if(b._wrap.style.position=="absolute"){d+=b._pos.y}c.style.top=[d,"px"].join("");c.style.left=[(b._page.win.w-c.width-30)/2,"px"].join("")}if(Browser.isWinIE){b._wrap.style.width=[b._page.win.w,"px"].join("");b._wrap.style.height=[b._page.win.h,"px"].join("");b._wrap.style.top=[b._pos.y,"px"].join("")}if(a){b._set_photo_size()}},_set_cursor:function(a){var b=this;if(Browser.isWinIE&&!Browser.isNewIE){return}a.style.cursor="pointer"},_current_setindex:function(){var a=this;if(!a._openedset){return-1}var b=a._sets[a._openedset];for(var i=0,n=b.length;i<n;i++){if(b[i]==a._open){return i}}return-1},_get_setlength:function(){var a=this;if(!a._openedset){return-1}return a._sets[a._openedset].length},_show_action:function(){var a=this;if(a._open==-1){return}if(a._zoomimg&&a._expandable){a._zoomimg.src=(a._expanded)?a._shrink:a._expand;a._zoomimg.style.display="inline"}var b=a._current_setindex();if(b>-1){if(b>0){a._prev.style.display="inline"}if(b<a._get_setlength()-1){a._next.style.display="inline"}}},_hide_action:function(){var a=this;if(a._zoomimg){a._zoomimg.style.display="none"}if(a._open>-1&&a._expanded){a._dragstop(null)}if(a._prev){a._prev.style.display="none"}if(a._next){a._next.style.display="none"}},_zoom:function(){var b=this;var c=document.getElementById("closeButton");if(b._expanded){b._reset_func();b._expanded=false;if(c){c.style.display="inline"}}else{if(b._open>-1){b._level=1;b._imgpos.x=b._pos.x;b._imgpos.y=b._pos.y;b._expanded=true;b._funcs.drag=function(a){b._dragstart(a)};b._funcs.dbl=function(a){b._close(null)};if(b._resizable){b._funcs.wheel=function(a){b._onwheel(a)};Event.register(b._box,"mousewheel",b._funcs.wheel)}Event.register(b._img,"mousedown",b._funcs.drag);Event.register(b._img,"dblclick",b._funcs.dbl);if(c){c.style.display="none"}}}b._set_photo_size();b._show_action()},_reset_func:function(){var a=this;if(a._funcs.wheel!=null){Event.deregister(a._box,"mousewheel",a._funcs.wheel)}if(a._funcs.move!=null){Event.deregister(a._img,"mousemove",a._funcs.move)}if(a._funcs.up!=null){Event.deregister(a._img,"mouseup",a._funcs.up)}if(a._funcs.drag!=null){Event.deregister(a._img,"mousedown",a._funcs.drag)}if(a._funcs.dbl!=null){Event.deregister(a._img,"dblclick",a._funcs.dbl)}a._funcs={"move":null,"up":null,"drag":null,"wheel":null,"dbl":null}},_onwheel:function(a){var b=this;var c=0;a=Event.getEvent(a);if(a.wheelDelta){c=event.wheelDelta/-120}else{if(a.detail){c=a.detail/3}}if(Browser.isOpera){c=-c}var d=(b._level<1)?0.1:(b._level<2)?0.25:(b._level<4)?0.5:1;b._level=(c>0)?b._level+d:b._level-d;if(b._level>8){b._level=8}else{if(b._level<0.5){b._level=0.5}}b._set_photo_size();return Event.stop(a)},_dragstart:function(b){var c=this;b=Event.getEvent(b);c._curpos.x=b.screenX;c._curpos.y=b.screenY;c._funcs.move=function(a){c._dragging(a)};c._funcs.up=function(a){c._dragstop(a)};Event.register(c._img,"mousemove",c._funcs.move);Event.register(c._img,"mouseup",c._funcs.up);return Event.stop(b)},_dragging:function(a){var b=this;a=Event.getEvent(a);b._imgpos.x+=a.screenX-b._curpos.x;b._imgpos.y+=a.screenY-b._curpos.y;b._curpos.x=a.screenX;b._curpos.y=a.screenY;b._set_photo_size();return Event.stop(a)},_dragstop:function(a){var b=this;a=Event.getEvent(a);if(b._funcs.move!=null){Event.deregister(b._img,"mousemove",b._funcs.move)}if(b._funcs.up!=null){Event.deregister(b._img,"mouseup",b._funcs.up)}b._funcs.move=null;b._funcs.up=null;b._set_photo_size();return(a)?Event.stop(a):false},_show_caption:function(a){var b=this;var c=document.getElementById("lightboxCaption");if(!c){return}if(c.innerHTML.length==0||!a){c.style.display="none"}else{c.style.top=[b._img.height+10,"px"].join("");c.style.left="0px";c.style.width=[b._img.width+20,"px"].join("");c.style.display="block"}},_toggle_wrap:function(a){var b=this;b._wrap.style.display=a?"block":"none";if(b._hiding.length==0&&!b._first){var c=["select","embed","object"];for(var i=0,n=c.length;i<n;i++){var d=document.getElementsByTagName(c[i]);for(var j=0,m=d.length;j<m;j++){var e=d[j].style.visibility;if(!e){if(d[j].currentStyle){e=d[j].currentStyle["visibility"]}else{if(document.defaultView){e=document.defaultView.getComputedStyle(d[j],"").getPropertyValue("visibility")}}}if(e=="hidden"){continue}b._hiding.push(d[j])}}b._first=true}for(var i=0,n=b._hiding.length;i<n;i++){b._hiding[i].style.visibility=a?"hidden":"visible"}},_show:function(b){var c=this;var d=new Image;if(b<0||b>=c._imgs.length){return}var f=document.getElementById("loadingImage");var g=document.getElementById("lightboxCaption");var h=document.getElementById("effectImage");c._open=b;c._set_size(false);c._toggle_wrap(true);if(f){f.style.display="inline"}d.onload=function(){if(c._imgs[c._open].w==-1){c._imgs[c._open].w=d.width;c._imgs[c._open].h=d.height}if(h){h.style.display=(!h.className||c._imgs[c._open].cls==h.className)?"block":"none"}if(g){try{g.innerHTML=c._imgs[c._open].title}catch(e){}}c._set_photo_size();c._hide_action();c._box.style.display="block";c._img.src=d.src;c._img.setAttribute("title",c._imgs[c._open].title);c._timer=window.setInterval(function(){c._set_size(true)},100);if(f){f.style.display="none"}if(c._imgs[c._open].set!="lightbox"){var a=c._imgs[c._open].set;if(c._sets[a].length>1){c._openedset=a}if(!c._prev||!c._next){c._openedset=null}}};c._expandable=false;c._expanded=false;d.src=c._imgs[c._open].src},_close_box:function(){var a=this;a._open=-1;a._openedset=null;a._hide_action();a._hide_action();a._reset_func();a._show_overall(false);a._box.style.display="none";if(a._timer!=null){window.clearInterval(a._timer);a._timer=null}},_show_next:function(a){var b=this;if(!b._openedset){return b._close(null)}var c=b._current_setindex()+a;var d=b._sets[b._openedset][c];b._close_box();b._show(d)},_close:function(a){var b=this;if(a!=null){a=Event.getEvent(a);var c=a.target||a.srcElement;if(c&&c.getAttribute("id")=="lightboxImage"&&b._expanded){return}}b._close_box();b._toggle_wrap(false)}};Event.register(window,"load",function(){var a=new LightBox({loadingimg:"/static/img/lb/loading.gif",expandimg:"/static/img/lb/expand.gif",shrinkimg:"/static/img/lb/shrink.gif",previmg:"/static/img/lb/prev.gif",nextimg:"/static/img/lb/next.gif",effectimg:"/static/img/logo.gif",effectpos:{x:56,y:-12},effectclass:"effectable",closeimg:"/static/img/lb/close.gif",resizable:false})});