
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(lightbox,options)
{this.lightbox=lightbox;if(!this.lightbox)return;this.setOptions(options);this.rollover=this.lightbox.content.getElement(".rollover");this.rolloverIE6Wrapper=this.lightbox.content.getElement(".rollover .ie6wrapper");this.thumbIconsContainer=this.lightbox.content.getElement(".thumbnails");var containers=this.lightbox.content.getElements(".viewers")
this.viewersContainer=containers[0];this.nextViewersContainer=containers[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(e){if(e.target.nodeName!='A'){e.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(event){event.stop();});this.target.getElement('.rollover').addEvent('click',function(event){event.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(event,arrow){event.stop();this.arrowEnter(arrow);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(event,arrow){event.stop();this.arrowEnter(arrow);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(event){event.stop();this.playVideo();}.bind(this));this.summary=this.lightbox.content.getElement('.summary');this.summary.addEvent('click',function(e){e.stop();if(e.target.nodeName=='A'){if(e.target.target=="_blank"){window.open(e.target.href,"_blank");}else{location.href=e.target.href;}}});this.lightbox.content.getElement('span.closeInfo').addEvent('click',function(event){if(event)event.stop();this.closeInfo();}.bind(this));this.lightbox.content.getElement("a.info").addEvent('click',function(event){if(event)event.stop();this.openInfo();}.bind(this));},openInfo:function(){this.next.setStyle('display','none');this.prev.setStyle('display','none');this.play.setStyle('display','none');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(x){$(x.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(event){if(this.keyIsPressed)return;this.keyIsPressed=true;switch(event.key){case'esc':if(this.summary.getStyle('display')=='none'){this.lightbox.hide();}else{this.closeInfo();}
break;case'return':case'enter':if(this.summary.getStyle('display')!='none'){this.closeInfo();}
break;case'i':case'I':if(this.summary.getStyle('display')=='none'){this.openInfo();}else{this.closeInfo();}
break;case'left':if(this.summary.getStyle('display')=='none'){this.arrowEnter(this.prev);}
break;case'right':if(this.summary.getStyle('display')=='none'){this.arrowEnter(this.next);}
break;}}.bind(this));document.addEvent('keyup',function(event){if(!this.keyIsPressed)return;this.keyIsPressed=false;if(this.summary.getStyle('display')!='none'){return;}
switch(event.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(n){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(e){return;}
this.project=window.projects[n];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(image,index){var newThumb=this.thumbTpl.clone();var img=newThumb.getElement('img');img.src=image.thumb;var newThumbElement=newThumb.inject(this.rolloverIE6Wrapper);newThumbElement.addEvent('click',function(event,index){event.stop();if(this.selected!=index){this.swap(index);}}.bindWithEvent(this,index));var newMain=this.mainTpl.clone();newMain.setStyles({'background-image':'url('+image.main+')','display':(index==this.selected)?'block':'none','opacity':(index==this.selected)?'1.0':'0.0'});newMain.id='viewer'+image.id;newMain.inject(this.viewersContainer);if(image.video){this.project.images[index].swf=new SWFObject('/_lib/player.swf',newMain.id+'Player','934','488','9');this.project.images[index].swf.addParam('allowfullscreen','true');this.project.images[index].swf.addParam('allowscriptaccess','always');this.project.images[index].swf.addParam('wmode','opaque');this.project.images[index].swf.addVariable('autostart','true');this.project.images[index].swf.addVariable('skin','/_lib/modieus.swf');this.project.images[index].swf.addVariable('controlbar','none');this.project.images[index].swf.addVariable('file',image.video);this.project.images[index].swf.addVariable('enablejs','true');this.project.images[index].swf.addVariable('icons','false');}
var newIcon=this.iconTpl.clone();newIcon.removeClass('video');newIcon.removeClass('selected');if(image.video){newIcon.addClass('video');}
if(index==this.selected){newIcon.addClass('selected');}
var newIconElement=newIcon.inject(this.thumbIconsContainer);newIconElement.addEvent('mouseenter',this.thumbEnter.bind(this));}.bind(this));}
this.setupNav();this.setupKeys();this.loadData();location.hash='#'+n;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,"\'"));},preload:function(){if(!this.project)return;var isPreloading=false;for(var i=0;i<this.project.images.length;i++){this.project.images[i].preload=new Image();this.project.images[i].preload.src=this.project.images[i].main;if(!this.project.images[i].preload.complete){this.loading.removeClass('off');this.viewersContainer.fade('hide');this.viewersContainer.setStyle('display','none');this.project.images[i].preload.onload=function(i){setTimeout(function(i){this.loaded(this.project.images[i]);}.bind(this,i),500);}.bind(this,i);isPreloading=true;}else{this.project.images[i].isLoaded=true;}}
if(isPreloading)return;this.viewersContainer.fade('hide');this.viewersContainer.setStyles({'display':'block','visibility':'visible'});this.loading.addClass('off');this.viewersContainer.fade('in');},swapProjects:function(n){var swap=this.viewersContainer;this.viewersContainer=this.nextViewersContainer;this.nextViewersContainer=swap;this.nextViewersContainer.fade('out');this.load(n);this.lightbox.onopen();},swap:function(index){this.stopPlayer();if(index<0){if(this.project.prevProject>=0)
this.swapProjects(this.project.prevProject);return;}else if(index>this.count-1){if(this.project.nextProject>=0)
this.swapProjects(this.project.nextProject);return;}
this.viewers[index].fade('hide');this.viewers[index].setStyle('display','block');this.viewers[index].fade('in');this.viewers[this.selected].fade('out');this.thumbIcons[index].addClass('selected');this.thumbIcons[this.selected].removeClass('selected');this.selected=index;this.setupNav();},playVideo:function(){if(this.project.images[this.selected].swf){this.play.setStyle('display','none');this.play.rel='arrowIsHidden';var player=$(this.viewers[this.selected].id+'Player');if(player){if(player.setStyle){player.setStyle('display','block');}else if(player.style){player.style.display='block';}
if(player.sendEvent){player.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(obj){var player=false;if(obj.newstate=='PAUSED'||obj.newstate=='COMPLETED'){this.play.setStyle('display','block');this.play.rel='';player=$(this.viewers[this.selected].id+'Player');}
if(obj.newstate=='COMPLETED'){if(player&&player.setStyle){player.setStyle('display','none');}}},stopPlayer:function(){var player=$(this.viewers[this.selected].id+'Player');if(player){if(player.sendEvent){player.sendEvent('STOP');}
if(player.setStyle){player.setStyle('display','none');}else if(player.style){player.style.display='none';}}},loaded:function(img)
{for(var i=0;i<this.project.images.length-1;i++){if(this.project.images[i].main==img.main){this.project.images[i].isLoaded=true;}}
for(var i=0;i<this.project.images.length-1;i++){if(!this.project.images[i].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(this.project.prevProject>=0){this.prev.rel='';this.prev.setStyle('display','block');}else{this.prev.setStyles({'display':'none','opacity':0.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(this.project.nextProject>=0){this.next.rel='';this.next.setStyle('display','block');}else{this.next.setStyles({'display':'none','opacity':0.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.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(arrow){arrow.fx.cancel();arrow.setStyles({'opacity':1.0,'visibility':'visible'});},arrowLeave:function(arrow){if(Browser.Engine.name=='trident'&&Browser.Engine.version==5){arrow.setStyles({'opacity':0.0});arrow.setStyles({'visibility':'visible'});return;}
arrow.fx.start({'opacity':[1.0,0.0]}).chain(function(){arrow.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(obj){var player=$(obj['id']);player.addModelListener("STATE","window.lightbox.gallery.playerListener.bind(window.lightbox.gallery)");};window.addEvent("domready",function(){window.lightbox.onopen=function(){this.content.getElement('.controls h1').removeClass('sIFR-replaced');this.content.getElement('.controls p').removeClass('sIFR-replaced');sIFR.replace(window.ITCLubalinGraphStdBook,{selector:"#popover .controls h1",wmode:'transparent',forceSingleLine:true,antiAliasType:'advanced',tuneWidth:1,tuneHeight:-5,thickness:75,css:['.sIFR-root { color: #000000; }','.highlight { color: #ff0033; }']});sIFR.replace(window.ITCLubalinGraphStdBook,{selector:"#popover .controls p",wmode:'transparent',forceSingleLine:true,antiAliasType:'advanced',tuneWidth:1,tuneHeight:-5,thickness:100,sharpness:-200,css:['.sIFR-root { color: #454545; }']});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(){location.hash='';document.removeEvents('keydown');document.removeEvents('keyup');this.gallery.stopPlayer();}.bind(window.lightbox)
window.lightbox.load=function(target){if(!target||!target.id)return;var id=target.id.substr(4);if(!this.gallery){this.gallery=new Gallery(this);}
this.gallery.load(id);}.bind(window.lightbox)
if(location.hash){var id=location.hash.substr(1);if(id){if($('item'+id)){window.lightbox.show($('item'+id));}else{if(!location.href.match('all=1')){location.href='/projects/archive/?all=1#'+id;}}}}});window.addEvent("domready",function(){var oCategory=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 li=this.oForm.getElement('.select ul li:last-child');if(li)li.addClass('last');if(li.hasClass('current')){var items=this.oForm.getElements('.select ul li');if(items[items.length-2])items[items.length-2].addClass('last');}}});$('form-category').getElement('a.icon').addEvent('click',function(e){e.preventDefault();this.toggle();}.bind(oCategory));var oClients=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 li=this.oForm.getElement('.select ul li:last-child');if(li)li.addClass('last');if(li.hasClass('current')){var items=this.oForm.getElements('.select ul li');if(items[items.length-2])items[items.length-2].addClass('last');}}});$('form-client').getElement('a.icon').addEvent('click',function(e){e.preventDefault();this.toggle();}.bind(oClients));});