(function(){function a(){this.pages=[];this.currentPage=0;this.bottomOffset=100;this.isLoading=false;this.contentView=null;this.loadingView=null;this.pageRequest=null;var b=this.handleScroll.bind(this);window.addEvent("scroll",b);window.addEvent("load",b);window.addEvent("resize",b)}$extend(a.prototype,new Events());$extend(a.prototype,{load:function(){this.currentPage++;if(this.currentPage>=this.pages.length){return}this.loadingView.setStyle("display","block");this.isLoading=true;this.pageRequest=new Request({evalScripts:true});this.pageRequest.addEvent("success",this.handleLoad.bind(this));this.pageRequest.get(this.pages[this.currentPage])},handleLoad:function(){var b=new Element("div",{styles:{height:"0",overflow:"hidden"}});b.inject($$("body").getLast(),"bottom");b.set("html",this.pageRequest.response.text);b.getChildren().inject(this.contentView,"bottom");b.destroy();this.loadingView.setStyle("display","none");this.isLoading=false;this.fireEvent("pageloaded",[])},handleScroll:function(){var b=window.getScroll().y+window.getSize().y-this.contentView.getCoordinates().bottom;if(b+this.bottomOffset>=0&&!this.isLoading&&this.currentPage+1<this.pages.length){this.load()}}});window.InfiniteScroll=a})();var x1=new Image();x1.src="/img/common/loading.gif";var x2=new Image();x2.src="/img/common/popover-info-bg.png";var Gallery=new Class({Implements:Options,options:{target:".target",prev:"a.prev",next:"a.next",play:"a.play"},initialize:function(c,a){this.lightbox=c;if(!this.lightbox){return}this.setOptions(a);this.rollover=this.lightbox.content.getElement(".rollover");this.rolloverIE6Wrapper=this.lightbox.content.getElement(".rollover .ie6wrapper");this.thumbIconsContainer=this.lightbox.content.getElement(".thumbnails");var b=this.lightbox.content.getElements(".viewers");this.viewersContainer=b[0];this.nextViewersContainer=b[1];this.loading=this.lightbox.content.getElement(".loading");this.backdrop=this.lightbox.content.getElement(".backdrop");this.lightbox.lightbox.addEvent("click",function(){this.lightbox.hide()}.bind(this));this.lightbox.content.addEvent("click",function(d){if(d.target.nodeName!="A"){d.stop()}});this.thumbIcons=[];this.viewers=[];this.startTop=this.currentTop();this.fx=new Fx.Morph(this.rollover,{duration:"short",link:"cancel",transition:Fx.Transitions.Quad.easeInOut});this.target=this.lightbox.content.getElement(this.options.target);this.target.addEvent("mouseleave",this.thumbLeave.bind(this));this.target.getElement(".controls").addEvent("click",function(d){d.stop()});this.target.getElement(".rollover").addEvent("click",function(d){d.stop()});this.prev=this.lightbox.content.getElement(this.options.prev);this.next=this.lightbox.content.getElement(this.options.next);this.play=this.lightbox.content.getElement(this.options.play);this.prev.addEvents({mouseenter:this.arrowEnter.bind(this,this.prev),mouseleave:this.arrowLeave.bind(this,this.prev),click:function(d,e){d.stop();this.arrowEnter(e);this.swap(this.selected-1)}.bindWithEvent(this,this.prev)});this.prev.fx=new Fx.Morph(this.prev,{duration:"short",link:"cancel",transition:Fx.Transitions.Quad.easeInOut});this.next.addEvents({mouseenter:this.arrowEnter.bind(this,this.next),mouseleave:this.arrowLeave.bind(this,this.next),click:function(d,e){d.stop();this.arrowEnter(e);this.swap(this.selected+1)}.bindWithEvent(this,this.next)});this.next.fx=new Fx.Morph(this.next,{duration:"short",link:"cancel",transition:Fx.Transitions.Quad.easeInOut});this.backdrop.addEvent("click",this.playVideo.bind(this));this.play.addEvent("click",function(d){d.stop();this.playVideo()}.bind(this));this.summary=this.lightbox.content.getElement(".summary");this.summary.addEvent("click",function(d){d.stop();if(d.target.nodeName=="A"){if(d.target.target=="_blank"){window.open(d.target.href,"_blank")}else{location.href=d.target.href}}})},openInfo:function(){this.summary.addClass("over");this.summary.removeClass("off");sIFR.replace(window.ITCLubalinGraphStdBook,{selector:"#popover span.closeInfo",wmode:"transparent",forceSingleLine:true,antiAliasType:"advanced",css:[".sIFR-root { cursor: pointer; }","a { color: #ff0033; text-decoration: none; }","a:hover { color: #ff0033; text-decoration: underline; }"],onRelease:function(a){$(a.getAncestor()).fireEvent("click")}})},closeInfo:function(){this.summary.removeClass("over");this.summary.addClass("off");if(this.next.rel!="arrowIsHidden"){this.next.setStyle("display","block")}if(this.prev.rel!="arrowIsHidden"){this.prev.setStyle("display","block")}if(this.play.rel!="arrowIsHidden"){this.play.setStyle("display","block")}},setupKeys:function(){document.addEvent("keydown",function(a){if(this.keyIsPressed){return}this.keyIsPressed=true;switch(a.key){case"esc":this.lightbox.hide();break;case"left":this.arrowEnter(this.prev);break;case"right":this.arrowEnter(this.next);break}}.bind(this));document.addEvent("keyup",function(a){if(!this.keyIsPressed){return}this.keyIsPressed=false;switch(a.key){case"left":this.swap(this.selected-1);this.arrowLeave(this.prev);break;case"right":this.swap(this.selected+1);this.arrowLeave(this.next);break}}.bind(this))},load:function(b){try{if(!this.thumbTpl){this.thumbTpl=this.rolloverIE6Wrapper.getFirst().clone()}if(!this.mainTpl){this.mainTpl=this.viewersContainer.getFirst().clone()}if(!this.iconTpl){this.iconTpl=this.thumbIconsContainer.getFirst().clone()}this.rolloverIE6Wrapper.empty();this.viewersContainer.empty();this.thumbIconsContainer.empty()}catch(a){return}this.project=window.projects[b];if(!this.project){return}this.selected=0;this.count=0;if(this.project.images&&this.project.images.length){this.count=this.project.images.length;this.project.images.each(function(d,j){var f=this.thumbTpl.clone();var h=f.getElement("img");h.src=d.thumb;var k=f.inject(this.rolloverIE6Wrapper);k.addEvent("click",function(n,m){n.stop();if(this.selected!=m){this.swap(m)}}.bindWithEvent(this,j));var l=this.mainTpl.clone();l.setStyles({background:"url("+d.main+") 0 0 no-repeat",display:(j==this.selected)?"block":"none",opacity:(j==this.selected)?"1.0":"0.0"});l.id="viewer"+d.id;l.inject(this.viewersContainer);if(d.video){var i=new Element("div",{id:l.id+"Player"});i.inject(l.id);if(d.video_key){var c={youtube:"1",key:d.video_key,color:color_hightlight,autoplay:"0"}}else{var c={video:d.video,color:color_hightlight,autoplay:"0",poster:d.main}}var e={menu:"false",wmode:"opaque"};var g={};this.project.images[j].swf=swfobject.embedSWF("/_lib/videoplayer.swf",l.id+"Player","927","491","9.0.0","/_lib/expressInstall.swf",c,e,g)}}.bind(this));this.openInfo.delay(100,this)}this.setupNav();this.setupKeys();this.loadData();location.hash="#"+this.project.project_slug;this.viewers=this.viewersContainer.getChildren();this.thumbIcons=this.thumbIconsContainer.getChildren()},loadData:function(){this.lightbox.content.getElement(".controls h1").set("html",this.project.name+': <span class="highlight">'+this.project.title+"</span>");this.lightbox.content.getElement(".controls p").set("html",this.project.subtitle);this.lightbox.content.getElement(".summary h1").set("html",this.project.name+" <span>"+this.project.title+"</span>");this.lightbox.content.getElement(".summary h2").set("html",this.project.tagline||this.project.subtitle);this.lightbox.content.getElement(".summary p").set("html",this.project.info.replace(/\\\"/g,'"').replace(/\\\'/g,"'"));this.lightbox.content.getElement(".newinfo").set("html",'<span class="currentcnt">1</span> &nbsp;of&nbsp; '+this.project.images.length);if(this.project.info_text_color==1){this.summary.addClass("light")}else{this.summary.removeClass("light")}},preload:function(){if(!this.project){return}var a=false;for(var b=0;b<this.project.images.length;b++){this.project.images[b].preload=new Image();this.project.images[b].preload.src=this.project.images[b].main;if(!this.project.images[b].preload.complete){this.loading.removeClass("off");this.viewersContainer.fade("hide");this.viewersContainer.setStyle("display","none");this.project.images[b].preload.onload=function(c){setTimeout(function(d){this.loaded(this.project.images[d])}.bind(this,c),500)}.bind(this,b);a=true}else{this.project.images[b].isLoaded=true}}if(a){return}this.viewersContainer.fade("hide");this.viewersContainer.setStyles({display:"block",visibility:"visible"});this.loading.addClass("off");this.viewersContainer.fade("in")},swapProjects:function(b){var a=this.viewersContainer;this.viewersContainer=this.nextViewersContainer;this.nextViewersContainer=a;this.nextViewersContainer.fade("out");this.load(b);this.lightbox.onopen()},swap:function(b){if(b==0){this.openInfo.delay(100,this)}else{this.closeInfo.delay(100,this)}var c=false;if(this.viewers[b]){c=$(this.viewers[b].id+"Player")}if(c){this.backdrop.addClass("videoControls")}else{this.backdrop.removeClass("videoControls")}var a=this.lightbox.content.getElement(".currentcnt");if(a){a.set("html",(b+1))}this.stopPlayer();if(b<0){if(isset(this.project.prevProject)){this.swapProjects(this.project.prevProject)}return}else{if(b>this.count-1){if(isset(this.project.nextProject)){this.swapProjects(this.project.nextProject)}return}}if(this.viewers[b]){this.viewers[b].fade("hide");this.viewers[b].setStyle("display","block");this.viewers[b].setStyle("z-index","9");this.viewers[b].fade("in");this.viewers[this.selected].fade("out");this.viewers[this.selected].setStyle("z-index","8")}this.selected=b;this.setupNav()},playVideo:function(){if(this.project.images[this.selected].swf){this.play.setStyle("display","none");this.play.rel="arrowIsHidden";var a=$(this.viewers[this.selected].id+"Player");if(a){if(a.setStyle){a.setStyle("display","block")}else{if(a.style){a.style.display="block"}}if(a.sendEvent){a.sendEvent("PLAY")}else{this.project.images[this.selected].swf.write(this.viewers[this.selected].id)}}else{this.project.images[this.selected].swf.write(this.viewers[this.selected].id)}}},playerListener:function(b){var a=false;if(b.newstate=="PAUSED"||b.newstate=="COMPLETED"){this.play.setStyle("display","block");this.play.rel="";a=$(this.viewers[this.selected].id+"Player")}if(b.newstate=="COMPLETED"){if(a&&a.setStyle){a.setStyle("display","none")}}},stopPlayer:function(){if(this.viewers[this.selected]){var a=document.getElementById(this.viewers[this.selected].id+"Player")}if(a){a.pause();if(a.setStyle){}else{if(a.style){}}}},loaded:function(a){for(var b=0;b<this.project.images.length-1;b++){if(this.project.images[b].main==a.main){this.project.images[b].isLoaded=true}}for(var b=0;b<this.project.images.length-1;b++){if(!this.project.images[b].isLoaded){return}}if(this.loading.hasClass("off")){return}this.viewersContainer.fade("hide");this.viewersContainer.setStyles({display:"block",visibility:"visible"});this.loading.addClass("off");this.viewersContainer.fade("in")},setupNav:function(){if(!this.prevArrow){this.prevArrow=this.prev.getFirst()}if(!this.nextArrow){this.nextArrow=this.next.getFirst()}this.play.removeClass("first");if(this.selected==0){this.prevArrow.set("class","project");if(isset(this.project.prevProject)){this.prev.rel="";this.prev.setStyle("display","block")}else{this.prev.setStyles({display:"none",opacity:0});this.prev.rel="arrowIsHidden";this.prev.setStyle("visibility","visible");this.play.addClass("first")}}else{this.prevArrow.set("class","image");this.prev.setStyle("display","block");this.prev.rel=""}if(this.selected==this.count-1||this.count==0){this.nextArrow.set("class","project");if(isset(this.project.nextProject)){this.next.rel="";this.next.setStyle("display","block")}else{this.next.setStyles({display:"none",opacity:0});this.next.rel="arrowIsHidden";this.next.setStyle("visibility","visible")}}else{this.nextArrow.set("class","image");this.next.setStyle("display","block");this.next.rel=""}if(this.project&&this.project.images[this.selected]&&this.project.images[this.selected].swf){this.play.setStyle("display","block");this.play.rel=""}else{this.play.setStyle("display","none");this.play.rel="arrowIsHidden"}},currentTop:function(){return this.rollover.getStyle("top").toInt()},arrowEnter:function(a){a.fx.cancel();a.setStyles({opacity:1,visibility:"visible"})},arrowLeave:function(a){if(Browser.Engine.name=="trident"&&Browser.Engine.version==5){a.setStyles({opacity:0});a.setStyles({visibility:"visible"});return}a.fx.start({opacity:[1,0]}).chain(function(){a.setStyle("visibility","visible")})},thumbEnter:function(){if(this.currentTop()==0){return}this.fx.start({top:[this.currentTop(),0]})},thumbLeave:function(){if(this.currentTop()==this.startTop){return}this.fx.start({top:[this.currentTop(),this.startTop]})}});function playerReady(b){var a=$(b.id);a.addModelListener("STATE","window.lightbox.gallery.playerListener.bind(window.lightbox.gallery)")}window.addEvent("domready",function(){window.lightbox.onopen=function(){if(this.gallery){this.gallery.summary.removeClass("over");this.gallery.summary.addClass("off");this.gallery.loading.removeClass("off");this.gallery.preload()}}.bind(window.lightbox);window.lightbox.onclose=function(){window.location.hash="all";document.removeEvents("keydown");document.removeEvents("keyup");this.gallery.stopPlayer()}.bind(window.lightbox);window.lightbox.load=function(b){if(!b||!b.id){return}var c=b.id;var c=c.replace("item-","");if(!this.gallery){this.gallery=new Gallery(this)}this.gallery.load(c)}.bind(window.lightbox);if(location.hash){var a=location.hash.substr(1);if(a){if($("item-"+a)){window.lightbox.show($("item-"+a))}else{if(a=="all"){}else{if(!location.href.match("all=1")){location.href="/projects/archive/?all=1#"+a}}}}}});window.addEvent("domready",function(){var b=new FancySelect($("form-category"),"select",{fxOptions:{duration:250,transition:Fx.Transitions.Quad.easeInOut,wait:true},onOpen:function(){$("form-category").addClass("open")},onClose:function(){$("form-category").removeClass("open")},onReplace:function(){this.oForm.removeClass("default")},onSelect:function(){var d=this.oForm.getElement(".select ul li:last-child");if(d){d.addClass("last")}if(d.hasClass("current")){var e=this.oForm.getElements(".select ul li");if(e[e.length-2]){e[e.length-2].addClass("last")}}}});$("form-category").getElement("a.icon").addEvent("click",function(d){d.preventDefault();this.toggle()}.bind(b));var a=new FancySelect($("form-client"),"select",{fxOptions:{duration:250,transition:Fx.Transitions.Quad.easeInOut,wait:true},onOpen:function(){$("form-client").addClass("open")},onClose:function(){$("form-client").removeClass("open")},onReplace:function(){this.oForm.removeClass("default")},onSelect:function(){var d=this.oForm.getElement(".select ul li:last-child");if(d){d.addClass("last")}if(d.hasClass("current")){var e=this.oForm.getElements(".select ul li");if(e[e.length-2]){e[e.length-2].addClass("last")}}}});$("form-client").getElement("a.icon").addEvent("click",function(d){d.preventDefault();this.toggle()}.bind(a));if($$(".item").length>0){$$(".theresMore").setStyle("display","none");var c=new InfiniteScroll();c.contentView=$$(".items").getLast();c.loadingView=new Element("div",{"class":"projects-loading"});c.bottomOffset=-50;c.loadingView.inject(c.contentView,"after");c.pages=$$(".pagination a").map(function(d){return d.get("href")});c.addEvent("pageloaded",function(){window.captionFonts();window.initLightbox()})}});function isset(a){return(typeof(a)!="undefined")};
