addLoadListener(initHomePage);function getDivTarget(_1){var _2=getEventTarget(_1);while(_2.nodeName.toLowerCase()!="div"){_2=_2.parentNode;}return _2;};function getAnchorTarget(_3){var _4=getEventTarget(_3);while(_4.nodeName.toLowerCase()!="a"){_4=_4.parentNode;}return _4;};function hoverRoo(_5){colourLinks(getDivTarget(_5),true,false);};function noHoverRoo(_6){colourLinks(getDivTarget(_6),false,false);};function freezeRoo(_7){var _8=getDivTarget(_7);_8.frozen=true;};function unFreezeRoo(_9){var _a=getDivTarget(_9);_a.frozen=false;};function colourElements(_b,_c,_d){var _e=_d.getElementsByTagName(_b);for(var j=0;j<_e.length;j++){var _f=_e[j];_f.style.color=_c;}};function colourLinks(_10,_11,_12){var _13;if(_12){_13=retrieveComputedStyle(_10,"color");_10.saveColor=_13;_10.invertColour=_11;}else{_13=_10.saveColor;if(_11==_10.invertColour){return;}_10.invertColour=_11;}var _14=parseInt(_13.substring(1,_13.length),16);if(_11){_14=((_14&8388608)==0)?(_14|8421504):(_14&8355711);s=_14.toString(16);while(s.length<6){s="0"+s;}_13="#"+s;}colourElements("a",_13,_10);colourElements("h1",_13,_10);};var planets_g=[["Mercury",3.59],["Venus",8.87],["Earth",9.81],["The Moon",1.62],["Mars",3.77],["Ceres",0.27],["Jupiter",25.95],["Saturn",11.08],["Uranus",10.67],["Neptune",14.07],["Pluto",0.42],["Eris",0.8],["Pluto",0.42],["Neptune",14.07],["Uranus",10.67],["Saturn",11.08],["Jupiter",25.95],["Ceres",0.27],["Mars",3.77],["Earth",9.81],["The Moon",1.62],["Venus",8.87]];var planets_20fps=[];var planets_40fps=[];var planets=planets_20fps;var initial_speeds_base=[2.67,4,6,9,13.5];var initial_speeds_20fps=[];var initial_speeds_40fps=[];var initial_speeds=initial_speeds_20fps;var jump_times=[64000,32000,16000,8000,4000];var activities=[["a wee bit jumpy.","a bit jumpy.","jumpy.","very jumpy.","extremely jumpy."],["a wee bit bouncy.","a bit bouncy.","bouncy.","very bouncy.","extremely bouncy."],["hopping a wee bit.","hopping a bit.","hopping.","hopping a lot.","hopping mad!"]];var planetNdx;var activityNdx;var energyNdx;var framesPerSec=20;var frameInterval=1000/framesPerSec;var pixelsPerMetre=250;var displayMult=pixelsPerMetre/framesPerSec;function moveRoo(_15,_16){if(_16){_15.animationTimer=setInterval("moveRoo(document.getElementById(\""+_15.id+"\"), false)",frameInterval);return;}if(_15.frozen||_15.stopped||_15.busy){return;}_15.busy=true;var _17=_15.curFloatTop;if(isNaN(_17)){_17=0;}var _18=planets[planetNdx][1];var _19=_15.currentSpeed-_18;_17-=_19;if(_17>0){_17=0;_19=getInitialSpeed(_15,energyNdx);if(activityNdx==0){clearTimeout(_15.animationTimer);var _1a=getNextJumpTime(energyNdx);_15.animationTimer=setTimeout("moveRoo(document.getElementById(\""+_15.id+"\"), true)",_1a);}else{if(activityNdx==2){setHorizSpeed(_15,getInitialSpeed(_15,energyNdx));}}}if(activityNdx==2){var _1b=0;if(_15.leftwards||_15.rightwards){_1b=_15.curFloatLeft;if(isNaN(_1b)){_1b=0;}_1b+=_15.horizSpeed;_15.boundaryTestCnt--;if(_15.boundaryTestCnt==0){var _1c=getRoughHorizPosition(_15);if(_15.leftwards){if(_1c+_15.offsetWidth<0){_1b+=(getViewportHorizSize()-_1c-_15.horizSpeed);}}else{if(_1c>getViewportHorizSize()){_1b-=(_1c+_15.offsetWidth+_15.horizSpeed);}}_15.boundaryTestCnt=framesPerSec;}_15.curFloatLeft=_1b;_15.style.left=parseInt(_1b)+"px";}}_15.currentSpeed=_19;_15.curFloatTop=_17;_15.style.top=parseInt(_17)+"px";_15.busy=false;};function daysSinceUTC(){var _1d=new Date();var _1e=_1d.getTime();var _1f=Math.floor(_1e/86400000);return _1f;};function getRooInfo(_20,_21,_22){var s="Today the roos are on "+planets[_20][0];s=s+". They are "+activities[_21][_22];return s;};function getNextJumpTime(_23){return Math.random()*jump_times[_23];};function getInitialSpeed(_24,_25){return initial_speeds[_25]*(1+_24.adjustSpeed+Math.random()*0.1);};function createBtn(id,_26){var btn=document.createElement("a");btn.className="button";btn.setAttribute("id","");btn.id=id;btn.setAttribute("href","");btn.href="#";btn.setAttribute("hidefocus","");btn.hidefocus="hidefocus";var _27=document.createTextNode(_26);btn.appendChild(_27);return btn;};function groundRoos(_28){if(typeof _28=="undefined"){_28=window.event;}var _29=document.getElementById("kangas-nav");var _2a=_29.getElementsByTagName("div");for(var i=0;i<_2a.length;i++){var roo=_2a[i];if(/(^| )roos( |$)/.test(roo.className)){roo.style.top=0;roo.style.left=0;}}stopDefaultAction(_28);return false;};function changeFrameRate(_2b){if(typeof _2b=="undefined"){_2b=window.event;}var _2c=getAnchorTarget(_2b);var fps=_2c.fps;fps=(fps==20?40:20);framesPerSec=fps;displayMult=pixelsPerMetre/framesPerSec;frameInterval=1000/fps;initial_speeds=(fps==20)?initial_speeds_20fps:initial_speeds_40fps;planets=(fps==20)?planets_20fps:planets_40fps;_2c.fps=fps;_2c.removeChild(_2c.childNodes[0]);var _2d=document.createTextNode(fps==20?"Faster computer":"Slower computer");_2c.appendChild(_2d);stopDefaultAction(_2b);return false;};function stopStartRoos(_2e){if(typeof _2e=="undefined"){_2e=window.event;}var _2f=getAnchorTarget(_2e);var _30=!_2f.stopped;enableHorizontalScrollBar(_30);var _31=document.getElementById("kangas-nav");var _32=_31.getElementsByTagName("div");for(var i=0;i<_32.length;i++){var roo=_32[i];if(/(^| )roos( |$)/.test(roo.className)){roo.stopped=_30;}}_2f.stopped=_30;_2f.removeChild(_2f.childNodes[0]);var _33=document.createTextNode(_30?"Start roos":"Stop roos");_2f.appendChild(_33);stopDefaultAction(_2e);return false;};function moreSky(_34){if(typeof _34=="undefined"){_34=window.event;}var _35=document.getElementById("extra-sky");var _36=document.createElement("div");_36.className="sky";var _37=_35.getElementsByTagName("div");if(_37.length==0){var _38=getAnchorTarget(_34).lessSkyBtn;removeClass(_38,"disabled");_38.tabIndex=0;}_35.appendChild(_36);stopDefaultAction(_34);return false;};function lessSky(_39){if(typeof _39=="undefined"){_39=window.event;}var _3a=document.getElementById("extra-sky");var _3b=_3a.getElementsByTagName("div");var _3c=_3b.length;if(_3c>0){var _3d=_3b[0];_3a.removeChild(_3d);if(--_3c==0){var btn=getAnchorTarget(_39);btn.tabIndex=-1;addClass(btn,"disabled");}}stopDefaultAction(_39);return false;};function getMsgParagraph(_3e){var _3f=document.createElement("p");var _40=document.createElement("span");var _41=document.createTextNode(_3e);_40.appendChild(_41);_3f.appendChild(_40);return _3f;};function addRooControlsToPage(_42){var _43=document.getElementById("roo-controls");var _44=getMsgParagraph(_42);_43.appendChild(_44);var _45=document.createElement("h1");var _46=document.createTextNode("Roo controls");_45.appendChild(_46);_43.appendChild(_45);var _47=createBtn("stop-roos","Stop roos");_47.stopped=false;attachEventListener(_47,"click",stopStartRoos,false);_43.appendChild(_47);var _48=createBtn("ground-roos","Ground roos");attachEventListener(_48,"click",groundRoos,false);_43.appendChild(_48);var _49=createBtn("more-sky-btn","More sky");attachEventListener(_49,"click",moreSky,false);_43.appendChild(_49);var _4a=createBtn("less-sky-btn","Less sky");attachEventListener(_4a,"click",lessSky,false);addClass(_4a,"disabled");_4a.tabIndex=-1;_43.appendChild(_4a);var _4b=createBtn("frame rate","Faster computer");_4b.fps=framesPerSec;attachEventListener(_4b,"click",changeFrameRate,false);_43.appendChild(_4b);_49.lessSkyBtn=_4a;};function setHorizSpeed(roo,_4c){var _4d=1;if(roo.variableDir){if(Math.random()<0.5){roo.leftwards=true;roo.rightwards=false;}else{roo.rightwards=true;roo.leftwards=false;}_4d=0.1;}if(roo.leftwards){roo.horizSpeed=-_4c*_4d;}if(roo.rightwards){roo.horizSpeed=_4c*_4d;}};function enableHorizontalScrollBar(_4e){if(activityNdx==2){var _4f=document.getElementById("homebody");_4f.style.overflowX=_4e?"auto":"hidden";}};function initiatePlanetsTables(){for(var i=0;i<planets_g.length;i++){var _50=[planets_g[i][0],(planets_g[i][1]*pixelsPerMetre)/400];var _51=[planets_g[i][0],(planets_g[i][1]*pixelsPerMetre)/1600];planets_20fps.push(_50);planets_40fps.push(_51);}};function initiateInitialSpeeds(){var _52=1;for(var i=0;i<initial_speeds_base.length;i++){initial_speeds_20fps.push((initial_speeds_base[i]*_52*pixelsPerMetre)/20);initial_speeds_40fps.push((initial_speeds_base[i]*_52*pixelsPerMetre)/40);}};function animateRoos(){initiatePlanetsTables();initiateInitialSpeeds();var _53=daysSinceUTC();planetNdx=_53%22;activityNdx=_53%3;energyNdx=_53%5;var _54=getRooInfo(planetNdx,activityNdx,energyNdx);addRooControlsToPage(_54);enableHorizontalScrollBar(false);var _55=document.getElementById("kangas-nav");var _56=_55.getElementsByTagName("div");var _57=-0.2;for(var i=0;i<_56.length;i++){var roo=_56[i];if(/(^| )roos( |$)/.test(roo.className)){roo.adjustSpeed=_57;roo.currentSpeed=getInitialSpeed(roo,energyNdx);if(activityNdx==0){var _58=getNextJumpTime(energyNdx);roo.animationTimer=setTimeout("moveRoo(document.getElementById(\""+roo.id+"\"), true)",_58);}else{if(activityNdx==2){roo.leftwards=(roo.id=="user-roo")||(roo.id=="history-roo");roo.rightwards=(roo.id=="demo-roo")||(roo.id=="fun-roo");roo.variableDir=!(roo.leftwards||roo.rightwards);setHorizSpeed(roo,getInitialSpeed(roo,energyNdx));if(roo.leftwards||roo.rightwards){roo.boundaryTestCnt=framesPerSec;}roo.curFloatLeft=0;}roo.animationTimer=setInterval("moveRoo(document.getElementById(\""+roo.id+"\"), false)",frameInterval);}_57+=0.05;roo.frozen=false;roo.stopped=false;roo.busy=false;roo.curFloatTop=0;attachEventListener(roo,"mouseover",freezeRoo,false);attachEventListener(roo,"mouseout",unFreezeRoo,false);}}};function initHomePage(){var _59=identifyBrowser();if(_59=="ie6"||_59=="ie7"){var _5a=document.getElementById("kangas-nav");var _5b=_5a.getElementsByTagName("div");for(var i=0;i<_5b.length;i++){var roo=_5b[i];if(/(^| )roos( |$)/.test(roo.className)){colourLinks(roo,false,true);attachEventListener(roo,"mouseover",hoverRoo,false);attachEventListener(roo,"mouseout",noHoverRoo,false);}}}animateRoos();};