 var WAX={THUMB_OPACITY:0.6,UPDATE_INTERVAL:100,ANIMATE_SLOW:1000,ANIMATE_MEDIUM:500,ANIMATE_FAST:250,STATE_IDLE:null,STATE_CLICKED:'clicked',STATE_BUSY:'busy',hashShortcuts:{'#subscribe':'#menu-item-175 a'},pageWidth:960,featureWidth:360,baseHref:null,reBaseHref:null,reExtHref:null,pageWrapper:'#wrapper',state:null,live:true,init:function() {WAX.baseHref=$('base').attr('href');if(WAX.live) {WAX.baseHref=WAX.baseHref.replace('wp/','');} WAX.reBaseHref=new RegExp(WAX.baseHref);WAX.reExtHref=new RegExp('^(http|ftp|javascript|mailto)');var pageURL=window.location.href.replace(WAX.reBaseHref,'').replace(new RegExp('#(.*)$'),'');if(pageURL!='') {window.location.href=WAX.baseHref+'#'+pageURL;return;} WAX.ajax.init();WAX.url.setHash(window.location.hash);if(WAX.url.getHash()=='#') {window.location.href=WAX.url.current;$(WAX.pageWrapper).show();WAX.onLoad();WAX.ajax.preloadImages();}else {WAX.url.setTo();} setInterval('WAX.url.monitor()',WAX.UPDATE_INTERVAL);},setState:function(setValue) {WAX.state=setValue;},isBusy:function() {return(WAX.state!=WAX.STATE_IDLE);},url:{current:null,setHash:function(value) {value=WAX.url.getValue(value);WAX.url.current=value;},getHash:function() {return WAX.url.current;},getValue:function(value) {return((!value||value=='')?'#':value);},monitor:function() {var currentHash=WAX.url.getValue(window.location.hash);if(currentHash!=WAX.url.current) {WAX.setState(WAX.STATE_BUSY);WAX.url.setTo(currentHash);}else {if(WAX.state==WAX.STATE_CLICKED) {WAX.setState(WAX.STATE_IDLE);}}},setTo:function(hash) {if(hash) {WAX.url.setHash(hash);WAX.menu.hideOpen();WAX.columns.hide();$('#TB_closeWindowButton').trigger('click');} var hash=WAX.url.getHash();var url=WAX.baseHref+hash.replace(/^#/,'');WAX.fx.fadeOut(WAX.ajax.container,WAX.ANIMATE_MEDIUM);WAX.reset();$.get(url,{ajax:true},function(html){WAX.ajax.container.show().html(html);});}},reset:function() {WAX.scroll.onReset();},onLoad:function(container) {if($('.invert-logo',container).size()) {$('#site-title').addClass('inverted');}else {$('#site-title').removeClass('inverted');} $('.WAX-swap-content').show();WAX.menu.init(container);WAX.scroll.init(container);WAX.gallery.init(container);WAX.swapper.init(container);WAX.columns.init(container);WAX.chunker.init(container);WAX.ajax.parseLinks(container);WAX.ajax.updateContent(container);$('.hoverable').hover(function(){$(this).addClass('over');},function(){$(this).removeClass('over');});},scroll:{INCR:1,DELAY:30,mode:null,interval:null,func:null,startTime:null,iscrolls:[],init:function(container) {$('.scrolling',container).css('overflow','hidden').each(function() {var scrolling=$(this);var scrollingHeight=scrolling.height();var isVisible=scrolling.is(':visible');scrolling.show();scrolling.wrapInner('<div class="scrolling-contents" />');var content=$('.scrolling-contents',scrolling);var contentHeight=content.height();if(contentHeight>scrollingHeight) {var contentRange=contentHeight-scrollingHeight;var handleHeight=50;var handleContainer=$('<div class="scrollbar-handle-container"><div class="scrollbar-handle"></div></div>').appendTo(scrolling);handleContainer.height(scrollingHeight);var handle=$('.scrollbar-handle',handleContainer).css('top',handleHeight+'px');handle.css('height',(scrolling.height()-handleHeight)+'px');var value=0,numItems=$('.page-item',scrolling).size();if(numItems>0) {var selectedIndex=$('.current_page_item',scrolling).index();if(selectedIndex>=0) {value=Math.floor(selectedIndex/numItems*100);content.css('top',-((contentHeight-scrollingHeight)/100*value));}} handle.slider({value:100-value,orientation:'vertical',slide:function(event,ui) {content.css('top',-Math.round(contentRange*(1-(ui.value/100)))+'px');}});scrolling.mousewheel(function(event,delta) {var speed=10;var sliderVal=handle.slider('value');value=Math.max(0,Math.min(100,sliderVal+(delta*speed)));handle.slider('value',value);content.css('top',-Math.round(contentRange*(1-(value/100)))+'px');event.preventDefault();});var arrows=$('<div class="scrollbar-arrows-container"></div>');var arrowUp=$('<a href="javascript:void(0);" class="mizu-ui scrollbar-arrow scrollbar-arrow-up"></a>').appendTo(arrows);var arrowDown=$('<a href="javascript:void(0);" class="mizu-ui scrollbar-arrow scrollbar-arrow-down"></a>').appendTo(arrows);var arrow=$('.scrollbar-arrow',arrows).each(function() {var a=$(this);var direction=a.hasClass('scrollbar-arrow-up')?1:-1;if(WAX.scroll.mode=='mobile') {a.click(function() {var offset=-handle.slider('value')/100*contentRange;offset-=(scrollingHeight*0.9*direction);var value=Math.round(-offset/contentRange*100);if(value>100) {value=100;}else if(value<0) {value=0;} handle.slider('value',value);content.css('top',-Math.round(contentRange*(1-(value/100)))+'px');});}else {a.mousedown(function() {WAX.scroll.func=function(direction) {var date=new Date();var elapsed=date.getTime()-WAX.scroll.startTime;var extraSpeed=Math.min(10,Math.round(elapsed/100));var value=handle.slider('value')+direction*(WAX.scroll.INCR+extraSpeed);if(value>100) {WAX.scroll.stop();value=100;}else if(value<0) {WAX.scroll.stop();value=0;} handle.slider('value',value);content.css('top',-Math.round(contentRange*(1-(value/100)))+'px');};WAX.scroll.stop();var date=new Date();WAX.scroll.startTime=date.getTime();WAX.scroll.func(direction);WAX.scroll.interval=setInterval('WAX.scroll.func('+direction+');',WAX.scroll.DELAY);}).mouseup(function() {WAX.scroll.stop();});}});arrows.appendTo(handleContainer);} if(!isVisible) {scrolling.hide();}});var itemWidth=276;$('.slider',container).each(function() {var slider=$(this);var handle=$('.handle',slider);var content=$('.slider-content',slider);var contentWidth=$('.slider-item',slider).size()*itemWidth;var contentRange=contentWidth-slider.width();if(WAX.scroll.mode=='mobile') {var currentValue=0;var nextLink=$('<a class="slider-nav slider-next" href="javascript:void(0);">Next &gt;&gt;</a>');var prevLink=$('<a class="slider-nav slider-prev" href="javascript:void(0);">&lt;&lt; Previous</a>').hide();handle.css('border','0').append(nextLink).append(prevLink);var incr=slider.width()/contentRange*100;$('a.slider-nav',handle).click(function() {var link=$(this);var dir=link.hasClass('slider-next')?1:-1;currentValue+=(incr*dir);if(currentValue<0) {currentValue=0;}else if(currentValue>100) {currentValue=100;} content.css('left',-Math.round(contentRange*currentValue/100)+'px');prevLink.toggle(currentValue>0);nextLink.toggle(currentValue<100);});}else {content.css('width',contentWidth+'px');handle.slider({slide:function(event,ui) {content.css('left',-Math.round(contentRange*ui.value/100)+'px');}});}});},stop:function() {if(WAX.scroll.interval) {clearInterval(WAX.scroll.interval);WAX.scroll.interval=null;}},onReset:function() {var i,ni=WAX.scroll.iscrolls.length;for(i=0;i<ni;i++) {WAX.scroll.iscrolls[i].destroy();WAX.scroll.iscrolls[i]=null;} WAX.scroll.iscrolls=[];}},ajax:{container:null,cache:{},crossFading:false,init:function() {if(WAX.hashShortcuts[window.location.hash]) {var shortcut=WAX.hashShortcuts[window.location.hash];var cmd=$(shortcut).attr('href').replace('javascript:','');eval(cmd);window.location.hash='#';} WAX.ajax.container=$('#content');var ajaxContainer=$('<div class="ajaxify-container"></div>');var ajaxIDs=['bkgd','access','footer-strip','feature-columns','feature','project-gallery'];$(ajaxIDs).each(function() {ajaxContainer.append('<div id="ajax-'+this+'"></div>');});$('#container').prepend(ajaxContainer);WAX.ajax.parseLinks('#ticker');},onLoad:function() {$(WAX.pageWrapper).show();WAX.ajax.container.show();WAX.onLoad(WAX.ajax.container);WAX.ajax.preloadImages();WAX.fx.fadeIn(WAX.ajax.container.hide(),WAX.ANIMATE_MEDIUM);WAX.setState(WAX.STATE_IDLE);},preloadImages:function() {var imgSet=$('img');imgSet.each(function() {var a=$(this).css('alpha',0);var src=a.attr('src');if(!WAX.ajax.cache[src]) {a.hide().load(function() {WAX.ajax.cache[src]=true;WAX.fx.fadeIn($(this),WAX.ANIMATE_SLOW);});if(this.complete) {a.load();}}}).contextMenu('contextMenu',{menuStyle:{'color':'#1A1718','text-transform':'uppercase','font-size':'9px','line-height':'1em','padding':'3px 5px','border':'1px solid #999','background-color':'#C9C8C8','float':'left','width':'auto'},itemStyle:{'border':'0','background-color':'#C9C8C8'},itemHoverStyle:{'border':'0','background-color':'#C9C8C8'}});},parseLinks:function(container) {if(!container){container='body';} $('a[href]',container).each(function() {var a=$(this);if(a.hasClass('no-ajax')) {return;}else if(a.hasClass('no-click')) {a.attr('href','javascript:void(0);');}else {var href=a.attr('href');if(!href.match(/#/)&&!href.match(/\.(pdf|png|jpg|gif|zip)$/)) {var newHref=href.replace(WAX.reBaseHref,'');if(!newHref.match(WAX.reExtHref)) {a.attr('href','#'+newHref).bind('click',function() {if(WAX.isBusy()||WAX.ajax.crossFading){return false;} WAX.setState(WAX.STATE_CLICKED);a.parents('.menu-item').addClass('menu-item-hover');});;}}}});},updateContent:function(container) {if(!container){container='body';} $('.ajaxify-container>div').each(function() {var a=$(this);var targetID=a.attr('rel');if(targetID) {var target=$('.'+targetID,container);if(target.size()==0) {WAX.fx.fadeOut(a,WAX.ANIMATE_FAST,function(){a.empty().show();});}}});$('.ajaxify',container).each(function() {var a=$(this);var targetID=a.attr('rel');var ajaxContainer=$('#'+targetID);var fadeSpeed=WAX.ANIMATE_FAST;var oldContent=null;var doFadeIn=(ajaxContainer.html()==''&&ajaxContainer.attr('rel'));var doCrossFade=false;if(a.hasClass('cross-fade')) {fadeSpeed=WAX.ANIMATE_SLOW;oldContent=$('div',ajaxContainer);var oldSrc=$('img',oldContent).attr('src');var newSrc=$('img',a).attr('src');if(oldSrc!=newSrc) {doCrossFade=doFadeIn=true;}else {var oldColor=$('div',ajaxContainer).css('background-color');var newColor=a.css('background-color');if(oldColor!=newColor) {doCrossFade=doFadeIn=true;}}} if(doCrossFade&&oldContent&&oldContent.html()==null) {doCrossFade=false;} ajaxContainer.attr('rel',targetID);if(doCrossFade) {WAX.ajax.crossFading=true;WAX.fx.fadeOut(oldContent,fadeSpeed,function(){oldContent.remove();WAX.ajax.crossFading=false;});WAX.fx.fadeIn(a.appendTo(ajaxContainer).css('z-index',parseInt(oldContent.css('z-index'))+1).hide(),fadeSpeed);}else {ajaxContainer.empty();a.appendTo(ajaxContainer);if(doFadeIn) {WAX.fx.fadeIn(a.hide(),fadeSpeed);}}});}},columns:{numItems:5,itemHeight:39,init:function(container) {var columns=$('.feature-column',container);var column=columns.filter('.selected-column');var selectedIndex=columns.index(column);var items=$('.WAX-swap-item',column);var columnContents=$('.column-contents',column);var arrow=$('.WAX-columns-arrow',container);if(items.size()>WAX.columns.numItems) {arrow.click(function() {var a=$(this);var nowTop=parseInt(columnContents.css('top'));var minTop=-(columnContents.height()-WAX.columns.itemHeight*WAX.columns.numItems);a.removeClass('WAX-columns-arrow-up');if(nowTop==minTop) {newTop=0;}else {var newTop=parseInt(nowTop)-WAX.columns.itemHeight*WAX.columns.numItems;if(newTop<minTop) {newTop=minTop;} if(newTop==minTop) {a.addClass('WAX-columns-arrow-up');}} columnContents.animate({top:newTop},WAX.ANIMATE_MEDIUM);});arrow.css('left',((selectedIndex+1)*120)-15);}else {arrow.hide();} column.css('top','0').animate({top:Math.max(-195,-columnContents.height())},WAX.ANIMATE_MEDIUM);},hide:function() {$('.selected-column').removeClass('selected-column').animate({top:0},WAX.ANIMATE_FAST);}},swapper:{defaultIndex:0,currentID:null,init:function(container) {WAX.swapper.currentID=null;var content=$('.WAX-swap-content',container).hide();var parents=$('.WAX-swap-item',container);var links=$('a.WAX-swap',container).each(function(i) {var a=$(this);var parent=a.parents('.WAX-swap-item');var targetID=a.attr('rel');a.bind('click',function() {if(targetID==WAX.swapper.currentID){return;} WAX.swapper.currentID=targetID;parents.removeClass('selected');content.hide();parent.addClass('selected');WAX.fx.fadeIn($('.'+targetID),WAX.ANIMATE_FAST);});}).eq(WAX.swapper.defaultIndex).trigger('click');}},chunker:{current:null,init:function(container) {WAX.chunker.current=-1;var chunkContainer=$('.project-chunks-container',container);var nav=$('.projects-nav a:not(.no-click)',container);if($('.on-the-boards',container).size()) {var n=nav.size();var counter=$('.gallery-counter');var caption=$('.image-caption');var images=$('img',chunkContainer);nav.each(function(i) {var a=$(this);a.bind('click',function() {if(i==WAX.chunker.current){return;} WAX.chunker.current=i;counter.text(WAX.zeroPad(i+1)+'/'+WAX.zeroPad(n));nav.removeClass('selected');a.addClass('selected');caption.text(WAX.zeroPad(i+1)+' '+images.eq(i).attr('alt'));chunkContainer.stop().animate({left:-(WAX.chunker.current*WAX.featureWidth)},WAX.ANIMATE_SLOW);});}).eq(0).trigger('click');}else if($('.case-studies',container).size()) {var n=nav.size();var counter=$('.gallery-counter');var caption=$('.image-caption');var images=$('.gallery-feature a');nav.each(function(i) {var a=$(this);a.bind('click',function() {if(i==WAX.chunker.current){return;} WAX.chunker.current=i;counter.text(WAX.zeroPad(i+1)+'/'+WAX.zeroPad(n));nav.removeClass('selected');a.addClass('selected');caption.text(WAX.zeroPad(i+1)+' '+$('img',images.eq(i)).attr('alt'));WAX.fx.fadeIn(images.hide().eq(i),WAX.ANIMATE_FAST);});}).eq(0).trigger('click');}else {var chunks=$('.project-chunk');var n=chunks.size();var labels=$('.WAX-label',nav);var divider=$('.projects-nav span.arrow-divider');nav.each(function(i) {var a=$(this);a.bind('click',function() {if(i==0) {WAX.chunker.current--;}else {WAX.chunker.current++;} if(WAX.chunker.current<0) {WAX.chunker.current=0;return;}else if(WAX.chunker.current>=n) {WAX.chunker.current=n-1;return;} nav.eq(0).toggle(WAX.chunker.current>0);nav.eq(1).toggle(WAX.chunker.current<(n-1));divider.toggle(WAX.chunker.current>0&&WAX.chunker.current<(n-1));chunkContainer.stop().animate({left:-(WAX.chunker.current*WAX.pageWidth)},WAX.ANIMATE_SLOW);});}).eq(1).trigger('click');}}},gallery:{busy:false,init:function(container) {$('.gallery',container).each(function() {var feature=$('.gallery-feature',this);var caption=$('.image-caption',feature);var counter=$('.gallery-counter-value',this);var thumbs=$('a.gallery-thumbnail',this);var zooms=$('a.image-zoom',this).attr('target','_self');var n=$('img',thumbs).size();thumbs.each(function(i){var a=$(this);if(a.html()==''){return;} var imageURL=WAX.baseHref+a.attr('href');var scrim=$('<span class="scrim"></span>').css('opacity',WAX.THUMB_OPACITY);a.addClass('no-ajax').attr('href','javascript:void(0);').attr('target','_self').append(scrim).bind('click',function() {if(WAX.gallery.busy||a.hasClass('WAX-selected')){return;} var zoom=zooms.eq(i);var imageContainer=$('.image-container',zoom);WAX.gallery.busy=true;counter.text(WAX.zeroPad(i+1)+'/'+WAX.zeroPad(n));thumbs.removeClass('WAX-selected');a.addClass('WAX-selected');if(imageContainer.html()=='') {var img=new Image();$(img).load(function() {zooms.hide();WAX.fx.fadeIn(zoom,WAX.ANIMATE_MEDIUM,function(){WAX.gallery.busy=false;});caption.text(a.attr('title'));imageContainer.append(img);feature.stop().show();}).attr('src',imageURL);}else {zooms.hide();WAX.fx.fadeIn(zoom,WAX.ANIMATE_MEDIUM,function(){WAX.gallery.busy=false;});caption.text(a.attr('title'));}}).hover(function(){a.addClass('WAX-on');},function(){a.removeClass('WAX-on');});}).eq(0).trigger('click');});},zoom:function(imageURL,caption,group) {tb_show(caption,imageURL,group);}},color:{current:{},update:function(key,selector,color) {WAX.color.change(key);WAX.color.change(key,selector,color);},change:function(key,selector,color) {var instant=(!selector||!WAX.color.current[key]);if(WAX.color.current[key]&&color==WAX.color.current[key][1]){return true;} if(!selector) {selector=WAX.color.current[key][0];color=WAX.color.current[key][1];}else {WAX.color.current[key]=[selector,color];} var existingColor=$(selector).css('background-color');if(instant||existingColor=='transparent') {$(selector).css('background-color',color);}else {$(selector).animate({backgroundColor:color},WAX.ANIMATE_MEDIUM);}}},menu:{togglables:null,init:function(container) {if(!container){container='body';} var addThis=$('.addthis a').addClass('addthis_button_compact no-click');addThis.append('<span class="at300bs at15nc at15t_compact"></span>');addThis.wrap('<span class="addthis_toolbox addthis_default_style" />');if(window.addthis) {window.addthis.ost=0;if(window.addthis.ready) {window.addthis.ready();}} WAX.menu.togglables=$('.togglable',container);WAX.menu.togglables.each(function() {var menu=$(this);var a=$('.WAX-toggle',menu);var innerWidth=parseInt(menu.css('width'))-parseInt(a.css('width'));menu.css('left',innerWidth+'px');menu.attr('_left',menu.css('left'));a.bind('click',function() {var left=menu.attr('_left');if(menu.css('left')=='0px') {menu.animate({left:left},WAX.ANIMATE_FAST);}else {menu.animate({left:0},WAX.ANIMATE_FAST);}});menu.bind('hide',function() {if(menu.css('left')=='0px') {a.trigger('click');}});});},hideOpen:function() {WAX.menu.togglables.trigger('hide');}},zeroPad:function(value,n) {if(!n){n=2;} var s=String(value);var ni=n-s.length;for(var i=0;i<ni;i++) {s='0'+s;} return s;},fx:{fadeIn:function(el,duration,closure) {return el.fadeIn(duration,closure);},fadeOut:function(el,duration,closure) {return el.fadeOut(duration,closure);}},dialog:{open:function(url,title,size) {if(!size)size=[640,360];$('#dialog').empty().dialog({width:size[0],height:size[1],resizable:false,modal:true,title:title}).load(url,{ajax:1,popup:1},function() {$('input[type=text]','#dialog').eq(0).trigger('focus');});}}};function debug(str) {if(!$('#debug').size()) {$('<div id="debug">DEBUGGER: </div>').appendTo('body');} $('#debug').append(' | ',str);} function htmlentities(str) {return $('<div/>').text(str).html();} var $=jQuery.noConflict();$(function(){WAX.init();});$(window).bind('load',function(){setTimeout(hideURLbar,0);},false);function hideURLbar() {window.scrollTo(0,1);}
