/* Animation Techniques by EFF */ function fade(elem,startRGB,endRGB,finalRGB,steps,intervals,powr) { if (elem.bgFadeInt) window.clearInterval(elem.bgFadeInt); var actStep = 0; var actBack = 0; var r=0; var b=0; var g=0; //setOpacity(elem, 5); elem.bgFadeInt = window.setInterval( function() { r = easeInOut(startRGB[0],endRGB[0],steps,actStep,powr); g = easeInOut(startRGB[1],endRGB[1],steps,actStep,powr); b = easeInOut(startRGB[2],endRGB[2],steps,actStep,powr); if(r == undefined){ r = endRGB[0]; } if(g == undefined){ g = endRGB[1]; } if(b == undefined){ b = endRGB[2]; } elem.style.color = "rgb("+r+","+g+","+b+")"; actStep++; if (actStep > steps) { r = easeInOut(finalRGB[0],endRGB[0],steps,steps-actBack,powr); g = easeInOut(finalRGB[1],endRGB[1],steps,steps-actBack,powr); b = easeInOut(finalRGB[2],endRGB[2],steps,steps-actBack,powr); if(r == undefined){ r = finalRGB[0]; } if(g == undefined){ g = finalRGB[1]; } if(b == undefined){ b = finalRGB[2]; } elem.style.color = "rgb("+r+","+g+","+b+")"; actBack++; if (actBack > steps){ window.clearInterval(elem.bgFadeInt); } } } ,intervals) } function fadeBorder(elem,border,startRGB,endRGB,finalRGB,steps,intervals,powr) { if (elem.bgFadeInt) window.clearInterval(elem.bgFadeInt); var actStep = 0; var actBack = 0; var r=0; var b=0; var g=0; //setOpacity(elem, 5); elem.bgFadeInt = window.setInterval( function() { r = easeInOut(startRGB[0],endRGB[0],steps,actStep,powr); g = easeInOut(startRGB[1],endRGB[1],steps,actStep,powr); b = easeInOut(startRGB[2],endRGB[2],steps,actStep,powr); if(r == undefined){ r = endRGB[0]; } if(g == undefined){ g = endRGB[1]; } if(b == undefined){ b = endRGB[2]; } elem.style.border = border + "px solid rgb("+r+","+g+","+b+")"; actStep++; if (actStep > steps) { r = easeInOut(finalRGB[0],endRGB[0],steps,steps-actBack,powr); g = easeInOut(finalRGB[1],endRGB[1],steps,steps-actBack,powr); b = easeInOut(finalRGB[2],endRGB[2],steps,steps-actBack,powr); if(r == undefined){ r = finalRGB[0]; } if(g == undefined){ g = finalRGB[1]; } if(b == undefined){ b = finalRGB[2]; } elem.style.border = border + "px solid rgb("+r+","+g+","+b+")"; actBack++; if (actBack > steps){ window.clearInterval(elem.bgFadeInt); } } } ,intervals) } function doWidthChangeMem(elem,startWidth,endWidth,finalWidth,steps,intervals,powr) { if (elem.widthChangeMemInt) window.clearInterval(elem.widthChangeMemInt); var actStep = 0; var actBack = 0; elem.widthChangeMemInt = window.setInterval( function() { elem.style.left = easeInOut(startWidth,endWidth,steps,actStep,powr)+"px"; actStep++; if (actStep > steps){ elem.style.left = easeInOut(startWidth,endWidth,steps,steps-actBack,powr)+"px"; actBack++; if (actBack > steps){ window.clearInterval(elem.widthChangeMemInt); } } } ,intervals) } function doHeightChangeMem(elem,startHeight,endHeight,steps,intervals,powr) { //alert(endHeight); //alert(elem); if (elem.heightChangeMemInt) window.clearInterval(elem.heightChangeMemInt); var actStep = 0; //alert(elem.style.pixelHeight); elem.heightChangeMemInt = window.setInterval( function() { //alert(easeInOut(startWidth,endWidth,steps,actStep,powr)); elem.style.height = easeInOut(startHeight,endHeight,steps,actStep,powr)+"px"; actStep++; if (actStep > steps){ window.clearInterval(elem.heightChangeMemInt); //elem.style.height = ''; } } ,intervals) } function ZoomImageMem(d, key, elem,startWidth,startHeight,endWidth,endHeight,startTop,startLeft,endTop,endLeft,steps,intervals,powr) { //alert(endHeight); //alert(elem); if (elem.ZoomImageMemInt) window.clearInterval(elem.ZoomImageMemInt); var actStep = 0; //alert(elem.style.pixelHeight); if(d == 'in'){ //elem.style.zIndex = key+2; } elem.ZoomImageMemInt = window.setInterval( function() { //alert(easeInOut(startWidth,endWidth,steps,actStep,powr)); elem.style.width = easeInOut(startWidth,endWidth,steps,actStep,powr)+"px"; elem.style.height = easeInOut(startHeight,endHeight,steps,actStep,powr)+"px"; elem.style.top = easeInOut(startTop,endTop,steps,actStep,powr)+"px"; elem.style.left = easeInOut(startLeft,endLeft,steps,actStep,powr)+"px"; actStep++; if (actStep > steps){ window.clearInterval(elem.ZoomImageMemInt); //elem.style.height = ''; if(d == 'out'){ //elem.style.zIndex = key-2; } } } ,intervals) } function flashImage(elem,opacity_start,opacity_end,steps,intervals,powr) { if (elem.OpacityChangeMemInt) window.clearInterval(elem.OpacityChangeMemInt); var actStep = 0; var opacity_value = 0; //alert(elem.style.pixelHeight); elem.OpacityChangeMemInt = window.setInterval( function() { //alert(easeInOut(startWidth,endWidth,steps,actStep,powr)); opacity_value = easeInOut(opacity_start,opacity_end,steps,actStep,powr); //blu(opacity_value); setOpacity(elem, opacity_value); actStep++; if (actStep > steps){ window.clearInterval(elem.OpacityChangeMemInt); } } ,intervals) } function setOpacity(obj, value) { if(value == 100){ obj.style.opacity = ''; /* fuckin ie bug busted by eff */ obj.style.filter = ''; } else { obj.style.opacity = value/100; obj.style.filter = 'alpha(opacity='+value+')'; //blu(obj.style.opacity); } } var IE = document.all?true:false; function realfade(direction,elem,opacity_start,opacity_end,steps,intervals,powr) { if (elem.OpacityChangeMemInt) window.clearInterval(elem.OpacityChangeMemInt); var actStep = 0; if(direction == 'in'){ setOpacity(elem, 0); elem.style.display = 'block'; } elem.OpacityChangeMemInt = window.setInterval( function() { setOpacity(elem, easeInOut(opacity_start,opacity_end,steps,actStep,powr)); actStep++; if (actStep > steps){ if(direction == 'out'){ elem.style.display = 'none'; } window.clearInterval(elem.OpacityChangeMemInt); } } ,intervals) } //******************* function doPosChangeMem(elem,startPos,endPos,steps,intervals,powr) { if (elem.posChangeMemInt) window.clearInterval(elem.posChangeMemInt); var actStep = 0; elem.posChangeMemInt = window.setInterval( function() { elem.currentPos = [ easeInOut(startPos[0],endPos[0],steps,actStep,powr), easeInOut(startPos[1],endPos[1],steps,actStep,powr) ]; elem.style.left = elem.currentPos[0]+"px"; elem.style.top = elem.currentPos[1]+"px"; actStep++; if (actStep > steps) window.clearInterval(elem.posChangeMemInt); } ,intervals) } function motion_fader_on_components(object, offset_start, offset_end, speed){ if (object.motion_fader_memory_flag) window.clearInterval(object.motion_fader_memory_flag); var step = 0; var length = speed; object.motion_fader_memory_flag = window.setInterval( function(){ setOpacity(object, easeInOut(offset_start,offset_end,length,step,1)); step++; if(step>length){ window.clearInterval(object.motion_fader_memory_flag); } }, 10); } function motion_fader_on_objects(object, offset_start, offset_end, speed){ if (object.motion_fader_memory_flag) window.clearInterval(object.motion_fader_memory_flag); var step = 0; var length = speed; object.motion_fader_memory_flag = window.setInterval( function(){ setOpacity(object, easeInOut(offset_start,offset_end,length,step,5)); step++; if(step>length){ window.clearInterval(object.motion_fader_memory_flag); } }, 10); } function scale_div_height(object, offset_start, offset_end, speed){ if (object.scale_div_height_memory_flag) window.clearInterval(object.scale_div_height_memory_flag); var step = 0; var length = speed; var interval = 20; object.scale_div_height_memory_flag = window.setInterval( function(){ object.style.height = easeInOut(offset_start,offset_end,length,step,1) + 'px'; step++; if(step>length){ window.clearInterval(object.scale_div_height_memory_flag); } }, interval); } function scrollpage(object, ext){ if (object.scroll_div_height_memory_flag) window.clearInterval(object.scroll_div_height_memory_flag); var step = 1; var length = 30; var interval = 10; var y; var target = (ext) ? ext : 111; if (self.pageYOffset){ // all except Explorer y = self.pageYOffset; } else if (document.documentElement && document.documentElement.scrollTop) {// Explorer 6 Strict y = document.documentElement.scrollTop; } else if (document.body) {// all other Explorers y = document.body.scrollTop; } if((target < y) && y){ object.scroll_div_height_memory_flag = window.setInterval( function(){ //easeInOut(minValue,maxValue,totalSteps,actualStep,powr) if(ext){ window.scroll(0,easeInOut(y,y+ext,length,step,11)); } else { window.scroll(0,easeInOut(y,target,length,step,11)); } step++; if(step>length){ window.clearInterval(object.scroll_div_height_memory_flag); } }, interval); } } function move_object(object, object_d, distance, limit, speed, cpu){ motion_sense = true; var styletask = object.style; var control = ''; switch(object_d){ case 'top' : control = styletask.bottom; break; case 'left' : control = styletask.right; break; case 'right' : control = styletask.right; break; case 'bottom' : control = styletask.bottom; break; } var offset_start = (control == '') ? 0 : normalize(control); var offset_end = eval(distance); //blu(offset_start + ' -> ' + offset_end); if (object.move_object_memory_flag) window.clearInterval(object.move_object_memory_flag); var step = 0; var length = speed; var interval = cpu; //blu(object.id); object.move_object_memory_flag = window.setInterval( function(){ //blu(offset_start + ' / ' + offset_end); object.style.right = easeInOut(offset_start,offset_end,length,step,1) + 'px'; //if(object_d == 'right') object.style.right = easeInOut(offset_start,offset_start-distance,length,step,1) + 'px'; step++; if(step>length){ window.clearInterval(object.move_object_memory_flag); motion_sense = false; } }, interval); } //******************* function easeInOut(minValue,maxValue,totalSteps,actualStep,powr) { var delta = maxValue - minValue; var stepp = minValue+(Math.pow(((1 / totalSteps)*actualStep),powr)*delta); return Math.ceil(stepp) } function preload(id) { if (document.getElementById) { // DOM3 = IE5, NS6 document.getElementById(id).style.visibility = 'hidden'; } else { if (document.layers) { // Netscape 4 document.hidepage.visibility = 'hidden'; } else { // IE 4 document.all.hidepage.style.visibility = 'hidden'; } } } var countDownInterval=15; var countDownTime=countDownInterval; function countDown() { --countDownTime; if (countDownTime < 0) { countDownTime=countDownInterval; } document.all.countDownText.innerText = countDownTime; setTimeout("countDown()", 1000); if (countDownTime == 0) { location.reload(); } }