
(function(){if(typeof YAHOO!=='object'){return false;}
YAHOO.namespace('Games.util');var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,Lang=YAHOO.lang,YG=YAHOO.Games,scroll_target=YAHOO.env.ua.ie?window:window.document;YG.util.getObjectSize=function(obj){var size=0,key;if(Lang.isObject(obj)){for(key in obj){if(obj.hasOwnProperty(key)){size+=1;}}}
return size;};YG.util.getEdges=function getEdges(el){var xy=Dom.getXY(el),edges=[xy[1],xy[0]+el.offsetWidth,xy[1]+el.offsetHeight,xy[0]];return edges;};YG.util.getView=(function(){var view,initialized,debounced,nullifyView,handleEvent;return function getView(){if(!initialized){initialized=true;nullifyView=function nullifyView(){view=null;};handleEvent=function handleEvent(ev){if(!debounced){if(!Lang.isFunction(YAHOO.Games.debounce)){debounced=nullifyView;}
if(!Lang.isFunction(debounced)){debounced=YAHOO.Games.debounce(nullifyView,30);}}
debounced();};Event.addListener(window,"resize",handleEvent);Event.addListener(scroll_target,"scroll",handleEvent);}
if(!view){view={};view.top=Math.max(document.body.scrollTop||0,document.documentElement.scrollTop||0,window.pageYOffset||0);view.height=Dom.getViewportHeight();view.bottom=view.top+view.height;}
return view;};}());YG.util.isVisible=function isVisible(el,threshold){var elPos,view=YG.util.getView();if(el.offsetHeight===0||el.offsetWidth===0){return false;}
elPos=Dom.getY(el);if(!elPos||elPos>view.bottom+threshold){return false;}
if(YAHOO.Games.util.isHiddenByOverflow(el,threshold)){return false;}
return true;};YG.util.isHiddenByOverflow=function isHiddenByOverflow(el,threshold){if(!Lang.isNumber(threshold)){threshold=0;}
var parentEl,elEdges=YG.util.getEdges(el),parentOverflow,parentEdges,edgeVisibility=[],is_visible;for(parentEl=el.parentNode;parentEl&&parentEl!==document.body;parentEl=parentEl.parentNode){parentOverflow=Dom.getStyle(parentEl,'overflow');if(parentOverflow!==''&&parentOverflow!=='visible'){parentEdges=YG.util.getEdges(parentEl);parentEdges[0]-=threshold;parentEdges[1]+=threshold;parentEdges[2]+=threshold;parentEdges[3]-=threshold;edgeVisibility[0]=(elEdges[0]>=parentEdges[0]&&elEdges[0]<=parentEdges[2]);edgeVisibility[1]=(elEdges[1]>=parentEdges[3]&&elEdges[1]<=parentEdges[1]);edgeVisibility[2]=(elEdges[2]>=parentEdges[2]&&elEdges[2]<=parentEdges[2]);edgeVisibility[3]=(elEdges[3]>=parentEdges[3]&&elEdges[3]<=parentEdges[1]);is_visible=(edgeVisibility[0]||edgeVisibility[2])&&(edgeVisibility[1]||edgeVisibility[3]);if(!is_visible){return true;}}}
return false;};YG.util.onVisible=(function(){var initialized=false,interval,debounced,handlers={},init,uninit,handleEvent,cancel,callIfVisible,callAllVisible,setProperty;init=function init(){if(!initialized){Event.addListener(window,"resize",handleEvent);Event.addListener(scroll_target,"scroll",handleEvent);initialized=true;}};uninit=function uninit(){if(initialized){Event.removeListener(window,"resize",handleEvent);Event.removeListener(scroll_target,"scroll",handleEvent);window.clearInterval(interval);initialized=false;}};handleEvent=function handleEvent(ev){if(!debounced){if(!Lang.isFunction(YAHOO.Games.debounce)){debounced=callAllVisible;}
if(!Lang.isFunction(debounced)){debounced=YAHOO.Games.debounce(callAllVisible,30);}}
debounced();};cancel=function cancel(id){if(handlers[id]){delete handlers[id];if(!YG.util.getObjectSize(handlers)){uninit();}
return true;}
return undefined;};callIfVisible=function callIfVisible(id){var handler=handlers[id];if(Lang.isObject(handler)){if(YAHOO.Games.util.isVisible(handler.el,handler.threshold)){handler.callback.call(handler.oScope,handler.arg);cancel(id);}}};callAllVisible=function callAllVisible(){var id;for(id in handlers){if(handlers.hasOwnProperty(id)){callIfVisible(id);}}};setProperty=function setProperty(id,property,value){if(Lang.isObject(handlers[id])){handlers[id][property]=value;return true;}
return undefined;};return function onVisible(el,callback,threshold,arg,oScope){var handler,id;el=Dom.get(el);if(!Lang.isObject(el)||!Lang.isFunction(callback)){return false;}
if(!Lang.isNumber(threshold)){threshold=0;}
if(!arg){arg=el;}
if(oScope===true){oScope=arg;}
if(!Lang.isObject(oScope)){oScope=window;}
init();handler={el:el,callback:callback,threshold:threshold,arg:arg,oScope:oScope};id=YAHOO.util.Dom.generateId();handlers[id]=handler;callIfVisible(id);return{cancel:function(){return cancel(id);},set:function(prop,val){return setProperty(id,prop,val);},check:function(){return callIfVisible(id);}};};}());YG.util.isURL=function(url){var regexp=/^https?:\/\/([\-\w\.]+)+(:\d+)?(\/([\w\/_\.]*(\?\S+)?)?)?/;return regexp.test(url);};}());(function(){if(typeof YAHOO!=='object'||typeof window!=='object'){return false;}
YAHOO.namespace('Games');YAHOO.Games.debounce=function debounce(fn,delay,reset_timer_on_debounce){var Lang,timer,delayed,debounced;Lang=YAHOO.lang;if(!Lang.isFunction(fn)){return undefined;}
delay=parseInt(delay,10);delay=Lang.isNumber(delay)?delay:100;reset_timer_on_debounce=Lang.isBoolean(reset_timer_on_debounce)?reset_timer_on_debounce:false;delayed=function delayed(){fn();timer=null;};debounced=function debounced(){if(timer&&reset_timer_on_debounce){timer=window.clearTimeout(timer);}
if(!timer){timer=window.setTimeout(delayed,delay);}};return debounced;};}());(function(){if(typeof YAHOO!=='object'){return false;}
YAHOO.namespace('Games');YAHOO.Games.imageLoader=(function imageLoader(){var Dom,Lang,src_attr,register,unregister,getNodeName,getDataSrc,handleOnVisible,load,loadImage,loadVisible,setThreshold,cleanArray;Dom=YAHOO.util.Dom;Lang=YAHOO.lang;src_attr='data-imageloader-src';register=function register(els,threshold){var count,i,el,tag,src;els=cleanArray(els);if(!Lang.isNumber(threshold)){threshold=0;}
count=els.length;if(!count){return false;}
for(i=0;i<count;i+=1){el=els[i];el=Dom.get(el);tag=getNodeName(el);src=getDataSrc(el);if(el){el.onVisibleListener=YAHOO.Games.util.onVisible(el,handleOnVisible,threshold,{el:el,tag:tag,src:src});}}
return{unregister:function(){unregister(els);},load:function(){load(els);},loadVisible:function(){loadVisible(els);},setThreshold:function(val){setThreshold(els,val);}};};unregister=function unregister(els){var count,i,el;els=cleanArray(els);count=els.length;for(i=0;i<count;i+=1){el=els[i];if(Lang.isObject(el.onVisibleListener)&&Lang.isFunction(el.onVisibleListener.cancel)){el.onVisibleListener.cancel();}
el.removeAttribute(src_attr);}};getNodeName=function getNodeName(el){return el.nodeName.toLowerCase();};getDataSrc=function getDataSrc(el){return Dom.getAttribute(el,src_attr);};handleOnVisible=function handleOnVisible(obj){var el=obj.el,tag=obj.tag,src=obj.src;loadImage(el,tag,src);};load=function load(els){var count,i,el,tag,src;els=cleanArray(els);count=els.length;for(i=0;i<count;i+=1){el=els[i];el=Dom.get(el);tag=getNodeName(el);src=getDataSrc(el);loadImage(el,tag,src);}};loadImage=function loadImage(el,tag,src){if(el&&tag&&src){if(tag==='img'){el.src=src;}else{Dom.setStyle(el,'backgroundImage','url('+src+')');}}
unregister(el);};loadVisible=function loadVisible(els){var count,i,el;els=cleanArray(els);count=els.length;for(i=0;i<count;i+=1){el=els[i];if(Lang.isFunction(el.onVisibleListener.check)){el.onVisibleListener.check();}}};setThreshold=function setThreshold(els,val){var count,i,el;els=cleanArray(els);count=els.length;for(i=0;i<count;i+=1){el=els[i];if(Lang.isFunction(el.onVisibleListener.set)){el.onVisibleListener.set('threshold',val);}}};cleanArray=function cleanArray(arr){var cleanArr,count,i;if(Lang.isArray(arr)){return arr;}
if(typeof arr==='undefined'){return[];}
if(typeof arr==='object'&&Lang.isNumber(arr.length)){cleanArr=[];count=arr.length;for(i=0;i<count;i+=1){cleanArr.push(arr[i]);}
return cleanArr;}
if(!Lang.isArray(arr)){return[arr];}
return false;};return{register:register};}());}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,el=Dom.getElementsByClassName('photos','ol')[0];if(el){Event.onDOMReady(function(){YAHOO.Games.imageLoader.register(Dom.getElementsByClassName('lz','img',el),2000);});}}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,Lang=YAHOO.lang;Event.onDOMReady(function(){var regionCache=[],photos,getPhotos,idVisiblePhoto,goTo,goNext,goPrev,handleKeyPress,handleFocus,keyNav,body=window.document.body;getPhotos=function(){if(typeof photos==='undefined'){photos=Dom.getElementsByClassName('photo','li');}
return photos;};idVisiblePhoto=function(){var clientRegion=Dom.getClientRegion(),photos=getPhotos(),i,count=photos.length,photoRegion;for(i=0;i<count;i+=1){if(regionCache[i]){photoRegion=regionCache[i];}else{photoRegion=YAHOO.util.Region.getRegion(photos[i]);if(photos[i].getElementsByTagName('img')[0].complete){regionCache[i]=photoRegion;}}
if(clientRegion.intersect(photoRegion)!==null){return i;}}
return undefined;};goTo=function(i){var photos=getPhotos(),photo_y=Dom.getY(photos[i]);window.scrollTo(0,photo_y);};goNext=function(){var currentPhoto=idVisiblePhoto();if(Lang.isNumber(currentPhoto)&&currentPhoto+1<getPhotos().length){goTo(currentPhoto+1);}};goPrev=function(){var currentPhoto=idVisiblePhoto();if(Lang.isNumber(currentPhoto)&&currentPhoto>0){goTo(currentPhoto-1);}};handleKeyPress=function(ev,data){var key_code=data[0];switch(key_code){case 74:goNext();break;case 75:goPrev();break;}
return true;};handleFocus=function(ev,data){var tag=Event.getTarget(ev).nodeName.toLowerCase(),type=ev.type;if(tag==='input'||tag==='select'||tag==='textarea'){switch(type){case'focus':keyNav.disable();break;case'blur':keyNav.enable();break;}}};keyNav=new YAHOO.util.KeyListener(window.document,{keys:[74,75]},handleKeyPress);keyNav.enable();body.focus();YAHOO.util.Event.on(body,'focusin',handleFocus);YAHOO.util.Event.on(body,'focusout',handleFocus);Dom.addClass(Dom.getElementsByClassName('key-nav-hint'),'key-nav-initialized');});}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event;Event.onDOMReady(function(){var fieldsetEl=Dom.getElementsByClassName('collapse','fieldset','search-form')[0],triggerEl=Dom.getElementsByClassName('collapse-trigger','legend',fieldsetEl)[0];Event.on(triggerEl,'click',function(ev){Event.preventDefault(ev);if(Dom.hasClass(fieldsetEl,'collapsed')){Dom.removeClass(fieldsetEl,'collapsed');}else{Dom.addClass(fieldsetEl,'collapsed');}});});}());(function(){YAHOO.namespace('TH');var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,TH=YAHOO.TH;TH.panel=(function(){var is_shown,get,getElement,show,hide,isShown,toggle,moveTo,setHeader,setBody,setFooter;get=(function(){var panel;return function(){if(!panel){panel=new YAHOO.widget.Overlay('th-panel',{width:'300px',visible:false,draggable:false,close:false});panel.setHeader('<span class="panel-hd"></span><a href="" class="panel-close">x</a>');panel.setBody('<span class="panel-bd"></span>');panel.setFooter('<span class="panel-ft"></span>');panel.render(document.body);Event.on(getElement(),'click',function(ev){var targetEl=Event.getTarget(ev);if(Dom.hasClass(targetEl,'panel-close')){Event.preventDefault(ev);hide();}});}
return panel;};})();getElement=function(){return get().element;};show=function(body){get().show();is_shown=true;return true;};hide=function(){get().hide();is_shown=false;return true;};isShown=function(){return is_shown;};toggle=function(){if(is_shown){hide();}else{show();}
return true;};moveTo=function(){var panel=get();panel.moveTo.apply(panel,arguments);return true;};setHeader=function(html){Dom.getElementsByClassName('panel-hd','span',getElement())[0].innerHTML=html;return true;};setBody=function(html){Dom.getElementsByClassName('panel-bd','span',getElement())[0].innerHTML=html;return true;};setFooter=function(html){Dom.getElementsByClassName('panel-ft','span',getElement())[0].innerHTML=html;return true;};return{getElement:getElement,show:show,hide:hide,toggle:toggle,isShown:isShown,moveTo:moveTo,setHeader:setHeader,setBody:setBody,setFooter:setFooter};})();}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,TH=YAHOO.TH,el=Dom.getElementsByClassName('about','a')[0];if(el){Event.onDOMReady(function(){var show,hide,isShown;show=function(){var xy,body_html;xy=Dom.getXY(el);xy[0]-=120;xy[1]+=15;TH.panel.moveTo(xy[0],xy[1]);body_html=el.getElementsByTagName('script')[0].innerHTML;TH.panel.setHeader('About');TH.panel.setBody(body_html);TH.panel.setFooter('');TH.panel.show();TH.panel.type='about';};hide=function(){TH.panel.hide();};isShown=function(){return(TH.panel.type==='about'&&TH.panel.isShown());};Event.on(el,'click',function(ev){Event.preventDefault(ev);if(isShown()){hide();}else{show();}
return true;});Dom.addClass(el,'about-initialized');});}}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,TH=YAHOO.TH,el=Dom.getElementsByClassName('bookmarklet','a')[0];if(el){Event.onDOMReady(function(){var show,hide,isShown;show=function(){var xy,body_html;xy=Dom.getXY(el);xy[0]-=120;xy[1]+=15;TH.panel.moveTo(xy[0],xy[1]);body_html=body_html||el.getElementsByTagName('script')[0].innerHTML;TH.panel.setHeader('Bookmarklets');TH.panel.setBody(body_html);TH.panel.setFooter('');TH.panel.show();TH.panel.type='bookmarklet';};hide=function(){TH.panel.hide();};isShown=function(){return(TH.panel.type==='bookmarklet'&&TH.panel.isShown());};Event.on(el,'click',function(ev){Event.preventDefault(ev);if(isShown()){hide();}else{show();}
return true;});Dom.addClass(el,'bookmarklet-initialized');});}}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,Connect=YAHOO.util.Connect,TH=YAHOO.TH,el=Dom.getElementsByClassName('permalink','a')[0];if(el){Event.onDOMReady(function(){var long_url=encodeURIComponent(el.href),api_url='http://bigpictr.com/shorten_url.php?url='+long_url,show,hide,isShown;show=(function(){var short_url,panelClickEvent,focusInput,setInput;focusInput=function(){var inputEl=Dom.getElementsByClassName('permalink-text','input')[0];inputEl.select();inputEl.focus();};setInput=function(msg,show_footer){var footer_html=(show_footer===false)?'':'Copy and paste to share this page.';TH.panel.setHeader('Permalink');TH.panel.setBody('<input type="text" readonly="true" class="permalink-text" value="'+msg+'">');TH.panel.setFooter(footer_html);focusInput();TH.panel.type='permalink';};return function(){var request,xy,handleShortenSuccess,handleShortenFailure;if(!panelClickEvent){panelClickEvent=Event.on(TH.panel.getElement(),'click',function(ev){var targetEl=Event.getTarget(ev);if(Dom.hasClass(targetEl,'permalink-text')){focusInput();}});}
if(short_url){setInput(short_url);}else{handleShortenSuccess=function(o){if(TH.panel.type==='permalink'){if(o.responseText!==undefined&&YAHOO.Games.util.isURL(o.responseText)){short_url=o.responseText;setInput(short_url);}else{handleShortenFailure();}}};handleShortenFailure=function(){setInput(long_url);};setInput('loading...',false);request=Connect.asyncRequest('GET',api_url,{success:handleShortenSuccess,failure:handleShortenFailure});}
xy=Dom.getXY(el);xy[0]-=200;xy[1]+=20;TH.panel.moveTo(xy[0],xy[1]);TH.panel.show();focusInput();};})();hide=function(){TH.panel.hide();};isShown=function(){return(TH.panel.type==='permalink'&&TH.panel.isShown());};Event.on(el,'click',function(ev){Event.preventDefault(ev);if(isShown()){hide();}else{show();}
return true;});});}}());(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,TH=YAHOO.TH,el=Dom.getElementsByClassName('publish','a')[0];if(el){Event.onDOMReady(function(){var body_html,publish,show,hide,isShown,handleInputFocus,handleInputBlur,prevent_enter_submit,handleKeyPress,panelClickEvent,keyNav;publish=function(){var desc,title,formEl,errorEl;desc=YAHOO.lang.trim(Dom.getElementsByClassName('publish-description','textarea')[0].value);title=YAHOO.lang.trim(Dom.getElementsByClassName('publish-title','input')[0].value);errorEl=Dom.getElementsByClassName('publish-error','p')[0];formEl=Dom.get('publish-form');if(desc&&title){Dom.addClass(errorEl,'publish-hidden');formEl.submit();}else{errorEl.innerHTML='Error: Title and description are required fields.';Dom.removeClass(errorEl,'publish-hidden');}};show=function(){var xy;if(!panelClickEvent){panelClickEvent=Event.on(TH.panel.getElement(),'click',function(ev){var targetEl=Event.getTarget(ev);if(Dom.hasClass(targetEl,'publish-submit')){Event.preventDefault(ev);publish();}});}
if(!handleInputBlur){handleInputBlur=Event.on(TH.panel.getElement(),'focusout',function(ev){var targetEl=Event.getTarget(ev);if(Dom.hasClass(targetEl,'publish-title')){prevent_enter_submit=false;}});}
if(!handleInputFocus){handleInputFocus=Event.on(TH.panel.getElement(),'focusin',function(ev){var targetEl=Event.getTarget(ev);if(Dom.hasClass(targetEl,'publish-title')){prevent_enter_submit=true;}});}
if(!keyNav){keyNav=new YAHOO.util.KeyListener(TH.panel.getElement(),{keys:[13]},handleKeyPress);keyNav.enable();}
xy=Dom.getXY(el);xy[0]-=240;xy[1]+=20;TH.panel.moveTo(xy[0],xy[1]);body_html=body_html||el.getElementsByTagName('script')[0].innerHTML;TH.panel.setHeader('Publish');TH.panel.setBody(body_html);TH.panel.setFooter('');TH.panel.show();TH.panel.type='publish';};hide=function(){TH.panel.hide();};isShown=function(){return(TH.panel.type==='publish'&&TH.panel.isShown());};handleKeyPress=function(ev,data){if(prevent_enter_submit){data[1].preventDefault();data[1].stopPropagation();}};Event.on(el,'click',function(ev){Event.preventDefault(ev);if(isShown()){hide();}else{show();}
return true;});Dom.addClass(el,'publish-initialized');});}}());var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-77772-8']);_gaq.push(['_trackPageview']);(function(){var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';(document.getElementsByTagName('head')[0]||document.getElementsByTagName('body')[0]).appendChild(ga);})();
