﻿String.prototype.parseColor=function(){var color='#';if(this.slice(0,4)=='rgb('){var cols=this.slice(4,this.length-1).split(',');var i=0;do{color+=parseInt(cols[i]).toColorPart()}while(++i<3);}else{if(this.slice(0,1)=='#'){if(this.length==4)for(var i=1;i<4;i++)color+=(this.charAt(i)+this.charAt(i)).toLowerCase();if(this.length==7)color=this.toLowerCase();}}return(color.length==7?color:(arguments[0]||this));};Element.collectTextNodes=function(bV){return $A($(bV).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:(node.hasChildNodes()?Element.collectTextNodes(node):''));}).flatten().join('');};Element.collectTextNodesIgnoreClass=function(bV,className){return $A($(bV).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:((node.hasChildNodes()&& !Element.hasClassName(node,className))?Element.collectTextNodesIgnoreClass(node,className):''));}).flatten().join('');};Element.setStyle=function(bV,style){bV=$(bV);for(k in style)bV.style[k.camelize()]=style[k];};Element.setContentZoom=function(bV,percent){Element.setStyle(bV,{fontSize:(percent/100)+'em'});if(navigator.appVersion.indexOf('AppleWebKit')>0)window.scrollBy(0,0);};Element.getOpacity=function(bV){var opacity;if(opacity=Element.getStyle(bV,'opacity'))return parseFloat(opacity);if(opacity=(Element.getStyle(bV,'filter')||'').match(/alpha\(opacity=(.*)\)/))if(opacity[1])return parseFloat(opacity[1])/100;return 1.0;};Element.setOpacity=function(bV,value){bV=$(bV);if(value==1){Element.setStyle(bV,{opacity:(/Gecko/.test(navigator.userAgent)&& !/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:null});if(/MSIE/.test(navigator.userAgent))Element.setStyle(bV,{filter:Element.getStyle(bV,'filter').replace(/alpha\([^\)]*\)/gi,'')});}else{if(value<0.00001)value=0;Element.setStyle(bV,{opacity:value});if(/MSIE/.test(navigator.userAgent))Element.setStyle(bV,{filter:Element.getStyle(bV,'filter').replace(/alpha\([^\)]*\)/gi,'')+'alpha(opacity='+value*100+')'});}};Element.getInlineOpacity=function(bV){return $(bV).style.opacity||'';};Element.childrenWithClassName=function(bV,className){return $A($(bV).getElementsByTagName('*')).select(function(c){return Element.hasClassName(c,className)});};Array.prototype.call=function(){var args=arguments;this.each(function(f){f.apply(this,args)});};var Effect={tagifyText:function(bV){var tagifyStyle='position:relative';if(/MSIE/.test(navigator.userAgent))tagifyStyle+=';zoom:1';bV=$(bV);$A(bV.childNodes).each(function(child){if(child.nodeType==3){child.nodeValue.toArray().each(function(character){bV.insertBefore(Builder.node('span',{style:tagifyStyle},character==' '?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(bV,effect){var elements;if(((typeof bV=='object')||(typeof bV=='function'))&&(bV.length))elements=bV;else elements=$(bV).childNodes;var options=Object.extend({dq:0.1,delay:0.0},arguments[2]||{});var masterDelay=options.delay;$A(elements).each(function(bV,index){new effect(bV,Object.extend(options,{delay:index*options.dq+masterDelay}));});},PAIRS:{'slide':['SlideDown','SlideUp'],'blind':['BlindDown','BlindUp'],'appear':['Appear','Fade']},toggle:function(bV,effect){bV=$(bV);effect=(effect||'appear').toLowerCase();var options=Object.extend({queue:{position:'aq',scope:(bV.id||'global'),limit:1}},arguments[2]||{});Effect[Element.visible(bV)?Effect.PAIRS[effect][1]:Effect.PAIRS[effect][0]](bV,options);}};var Effect2=Effect;Effect.Transitions={};Effect.Transitions.linear=function(pos){return pos;};Effect.Transitions.sinoidal=function(pos){return(-Math.cos(pos*Math.PI)/2)+0.5;};Effect.Transitions.reverse=function(pos){return 1-pos;};Effect.Transitions.flicker=function(pos){return((-Math.cos(pos*Math.PI)/4)+0.75)+Math.random()/4;};Effect.Transitions.wobble=function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+0.5;};Effect.Transitions.pulse=function(pos){return(Math.floor(pos*10)%2==0?(pos*10-Math.floor(pos*10)):1-(pos*10-Math.floor(pos*10)));};Effect.Transitions.none=function(pos){return 0;};Effect.Transitions.full=function(pos){return 1;};Effect.ScopedQueue=Class.create();Object.extend(Object.extend(Effect.ScopedQueue.prototype,Enumerable),{initialize:function(){this.effects=[];this.interval=null;},_each:function(iterator){this.effects._each(iterator);},add:function(effect){var timestamp=new Date().getTime();var position=(typeof effect.options.queue=='string')?effect.options.queue:effect.options.queue.position;switch(position){case 'front':this.effects.findAll(function(e){return e.state=='idle'}).each(function(e){e.startOn+=effect.finishOn;e.finishOn+=effect.finishOn;});break;case 'aq':timestamp=this.effects.pluck('finishOn').max()||timestamp;break;}effect.startOn+=timestamp;effect.finishOn+=timestamp;if(!effect.options.queue.limit||(this.effects.length<effect.options.queue.limit))this.effects.push(effect);if(!this.interval)this.interval=setInterval(this.loop.bind(this),40);},remove:function(effect){this.effects=this.effects.reject(function(e){return e==effect});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var timePos=new Date().getTime();this.effects.invoke('loop',timePos);}});Effect.Queues={instances:$H(),get:function(queueName){if(typeof queueName!='string')return queueName;if(!this.instances[queueName])this.instances[queueName]=new Effect.ScopedQueue();return this.instances[queueName];}};Effect.Queue=Effect.Queues.get('global');Effect.DefaultOptions={transition:Effect.Transitions.sinoidal,duration:1.0,fps:25.0,sync:false,from:0.0,to:1.0,delay:0.0,queue:'parallel'};Effect.Base=function(){};Effect.Base.prototype={position:null,start:function(options){this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});this.currentFrame=0;this.state='idle';this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.event('beforeStart');if(!this.options.sync)Effect.Queues.get(typeof this.options.queue=='string'?'global':this.options.queue.scope).add(this);},loop:function(timePos){if(timePos>=this.startOn){if(timePos>=this.finishOn){this.render(1.0);this.cancel();this.event('beforeFinish');if(this.finish)this.finish();this.event('afterFinish');return;}var pos=(timePos-this.startOn)/(this.finishOn-this.startOn);var frame=Math.round(pos*this.options.fps*this.options.duration);if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},render:function(pos){if(this.state=='idle'){this.state='running';this.event('beforeSetup');if(this.setup)this.setup();this.event('afterSetup');}if(this.state=='running'){if(this.options.transition)pos=this.options.transition(pos);pos*=(this.options.to-this.options.from);pos+=this.options.from;this.position=pos;this.event('beforeUpdate');if(this.update)this.update(pos);this.event('afterUpdate');}},cancel:function(){if(!this.options.sync)Effect.Queues.get(typeof this.options.queue=='string'?'global':this.options.queue.scope).remove(this);this.state='finished';},event:function(eventName){if(this.options[eventName+'Internal'])this.options[eventName+'Internal'](this);if(this.options[eventName])this.options[eventName](this);},inspect:function(){return '#<Effect:'+$H(this).inspect()+',options:'+$H(this.options).inspect()+'>';}};Effect.Parallel=Class.create();Object.extend(Object.extend(Effect.Parallel.prototype,Effect.Base.prototype),{initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){this.effects.invoke('render',position);},finish:function(position){this.effects.each(function(effect){effect.render(1.0);effect.cancel();effect.event('beforeFinish');if(effect.finish)effect.finish(position);effect.event('afterFinish');});}});Effect.Opacity=Class.create();Object.extend(Object.extend(Effect.Opacity.prototype,Effect.Base.prototype),{initialize:function(bV){this.bV=$(bV);if(/MSIE/.test(navigator.userAgent)&&(!this.bV.hasLayout))Element.setStyle(this.bV,{zoom:1});var options=Object.extend({from:Element.getOpacity(this.bV)||0.0,to:1.0},arguments[1]||{});this.start(options);},update:function(position){Element.setOpacity(this.bV,position);}});Effect.Move=Class.create();Object.extend(Object.extend(Effect.Move.prototype,Effect.Base.prototype),{initialize:function(bV){this.bV=$(bV);var options=Object.extend({x:0,y:0,mode:'relative'},arguments[1]||{});this.start(options);},setup:function(){Element.makePositioned(this.bV);this.originalLeft=parseFloat(Element.getStyle(this.bV,'left')||'0');this.originalTop=parseFloat(Element.getStyle(this.bV,'top')||'0');if(this.options.mode=='absolute'){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop;}},update:function(position){Element.setStyle(this.bV,{left:this.options.x*position+this.originalLeft+'px',top:this.options.y*position+this.originalTop+'px'});}});Effect.MoveBy=function(bV,toTop,toLeft){return new Effect.Move(bV,Object.extend({x:toLeft,y:toTop},arguments[3]||{}));};Effect.Scale=Class.create();Object.extend(Object.extend(Effect.Scale.prototype,Effect.Base.prototype),{initialize:function(bV,percent){this.bV=$(bV);var options=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:'box',scaleFrom:100.0,scaleTo:percent},arguments[2]||{});this.start(options);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=Element.getStyle(this.bV,'position');this.originalStyle={};['top','left','width','height','fontSize'].each(function(k){this.originalStyle[k]=this.bV.style[k];}.bind(this));this.originalTop=this.bV.offsetTop;this.originalLeft=this.bV.offsetLeft;var fontSize=Element.getStyle(this.bV,'font-size')||'100%';['em','px','%'].each(function(fontSizeType){if(fontSize.indexOf(fontSizeType)>0){this.fontSize=parseFloat(fontSize);this.fontSizeType=fontSizeType;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=='box')this.dims=[this.bV.offsetHeight,this.bV.offsetWidth];if(/^content/.test(this.options.scaleMode))this.dims=[this.bV.scrollHeight,this.bV.scrollWidth];if(!this.dims)this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];},update:function(position){var currentScale=(this.options.scaleFrom/100.0)+(this.factor*position);if(this.options.scaleContent&&this.fontSize)Element.setStyle(this.bV,{fontSize:this.fontSize*currentScale+this.fontSizeType});this.setDimensions(this.dims[0]*currentScale,this.dims[1]*currentScale);},finish:function(position){if(this.restoreAfterFinish)Element.setStyle(this.bV,this.originalStyle);},setDimensions:function(height,width){var d={};if(this.options.scaleX)d.width=width+'px';if(this.options.scaleY)d.height=height+'px';if(this.options.scaleFromCenter){var topd=(height-this.dims[0])/2;var leftd=(width-this.dims[1])/2;if(this.elementPositioning=='absolute'){if(this.options.scaleY)d.top=this.originalTop-topd+'px';if(this.options.scaleX)d.left=this.originalLeft-leftd+'px';}else{if(this.options.scaleY)d.top= -topd+'px';if(this.options.scaleX)d.left= -leftd+'px';}}Element.setStyle(this.bV,d);}});Effect.Highlight=Class.create();Object.extend(Object.extend(Effect.Highlight.prototype,Effect.Base.prototype),{initialize:function(bV){this.bV=$(bV);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options);},setup:function(){if(Element.getStyle(this.bV,'display')=='none'){this.cancel();return;}this.oldStyle={backgroundImage:Element.getStyle(this.bV,'background-image')};Element.setStyle(this.bV,{backgroundImage:'none'});if(!this.options.endcolor)this.options.endcolor=Element.getStyle(this.bV,'background-color').parseColor('#ffffff');if(!this.options.restorecolor)this.options.restorecolor=Element.getStyle(this.bV,'background-color');this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i]}.bind(this));},update:function(position){Element.setStyle(this.bV,{backgroundColor:$R(0,2).inject('#',function(m,v,i){return m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart());}.bind(this))});},finish:function(){Element.setStyle(this.bV,Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});Effect.ScrollTo=Class.create();Object.extend(Object.extend(Effect.ScrollTo.prototype,Effect.Base.prototype),{initialize:function(bV){this.bV=$(bV);this.start(arguments[1]||{});},setup:function(){Position.prepare();var offsets=Position.cumulativeOffset(this.bV);if(this.options.offset)offsets[1]+=this.options.offset;var max=window.innerHeight?window.height-window.innerHeight:document.body.scrollHeight-(document.documentElement.clientHeight?document.documentElement.clientHeight:document.body.clientHeight);this.scrollStart=Position.deltaY;this.delta=(offsets[1]>max?max:offsets[1])-this.scrollStart;},update:function(position){Position.prepare();window.scrollTo(Position.deltaX,this.scrollStart+(position*this.delta));}});Effect.Fade=function(bV){var oldOpacity=Element.getInlineOpacity(bV);var options=Object.extend({from:Element.getOpacity(bV)||1.0,to:0.0,afterFinishInternal:function(effect){with(Element){if(effect.options.to!=0)return;hide(effect.bV);setStyle(effect.bV,{opacity:oldOpacity});}}},arguments[1]||{});return new Effect.Opacity(bV,options);};Effect.FadeKeepSpace=function(bV){var oldOpacity=Element.getInlineOpacity(bV);var options=Object.extend({from:Element.getOpacity(bV)||1.0,to:0.0,afterFinishInternal:function(effect){with(Element){if(effect.options.to!=0)return;blank(effect.bV);setStyle(effect.bV,{opacity:oldOpacity});}}},arguments[1]||{});return new Effect.Opacity(bV,options);};Effect.AppearKeepSpace=function(bV){var options=Object.extend({from:(Element.getStyle(bV,'display')=='none'?0.0:Element.getOpacity(bV)||0.0),to:1.0,beforeSetup:function(effect){with(Element){setOpacity(effect.bV,effect.options.from);unblank(effect.bV);}}},arguments[1]||{});return new Effect.Opacity(bV,options);};Effect.Appear=function(bV){var options=Object.extend({from:(Element.getStyle(bV,'display')=='none'?0.0:Element.getOpacity(bV)||0.0),to:1.0,beforeSetup:function(effect){with(Element){setOpacity(effect.bV,effect.options.from);show(effect.bV);}}},arguments[1]||{});return new Effect.Opacity(bV,options);};Effect.Puff=function(bV){bV=$(bV);var oldStyle={opacity:Element.getInlineOpacity(bV),position:Element.getStyle(bV,'position')};return new Effect.Parallel([new Effect.Scale(bV,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(bV,{sync:true,to:0.0})],Object.extend({duration:1.0,beforeSetupInternal:function(effect){with(Element){setStyle(effect.effects[0].bV,{position:'absolute'});}},afterFinishInternal:function(effect){with(Element){hide(effect.effects[0].bV);setStyle(effect.effects[0].bV,oldStyle);}}},arguments[1]||{}));};Effect.BlindUp=function(bV){bV=$(bV);Element.makeClipping(bV);return new Effect.Scale(bV,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(effect){with(Element){[hide,undoClipping].call(effect.bV);}}},arguments[1]||{}));};Effect.BlindDown=function(bV){bV=$(bV);var elementDimensions=Element.getDimensions(bV);return new Effect.Scale(bV,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){with(Element){makeClipping(effect.bV);setStyle(effect.bV,{height:'0px'});show(effect.bV);}},afterFinishInternal:function(effect){Element.undoClipping(effect.bV);}},arguments[1]||{}));};Effect.SwitchOff=function(bV){bV=$(bV);var oldOpacity=Element.getInlineOpacity(bV);return new Effect.Appear(bV,{duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(effect){new Effect.Scale(effect.bV,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(effect){with(Element){[makePositioned,makeClipping].call(effect.bV);}},afterFinishInternal:function(effect){with(Element){[hide,undoClipping,undoPositioned].call(effect.bV);setStyle(effect.bV,{opacity:oldOpacity});}}})}});};Effect.DropOut=function(bV){bV=$(bV);var oldStyle={top:Element.getStyle(bV,'top'),left:Element.getStyle(bV,'left'),opacity:Element.getInlineOpacity(bV)};return new Effect.Parallel([new Effect.Move(bV,{x:0,y:100,sync:true}),new Effect.Opacity(bV,{sync:true,to:0.0})],Object.extend({duration:0.5,beforeSetup:function(effect){with(Element){makePositioned(effect.effects[0].bV);}},afterFinishInternal:function(effect){with(Element){[hide,undoPositioned].call(effect.effects[0].bV);setStyle(effect.effects[0].bV,oldStyle);}}},arguments[1]||{}));};Effect.Shake=function(bV){bV=$(bV);var oldStyle={top:Element.getStyle(bV,'top'),left:Element.getStyle(bV,'left')};return new Effect.Move(bV,{x:20,y:0,duration:0.05,afterFinishInternal:function(effect){new Effect.Move(effect.bV,{x: -40,y:0,duration:0.1,afterFinishInternal:function(effect){new Effect.Move(effect.bV,{x:40,y:0,duration:0.1,afterFinishInternal:function(effect){new Effect.Move(effect.bV,{x: -40,y:0,duration:0.1,afterFinishInternal:function(effect){new Effect.Move(effect.bV,{x:40,y:0,duration:0.1,afterFinishInternal:function(effect){new Effect.Move(effect.bV,{x: -20,y:0,duration:0.05,afterFinishInternal:function(effect){with(Element){undoPositioned(effect.bV);setStyle(effect.bV,oldStyle);}}})}})}})}})}})}});};Effect.SlideDown=function(bV){bV=$(bV);Element.cleanWhitespace(bV);var oldInnerBottom=Element.getStyle(bV.firstChild,'bottom');var elementDimensions=Element.getDimensions(bV);return new Effect.Scale(bV,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){with(Element){makePositioned(effect.bV);makePositioned(effect.bV.firstChild);if(window.opera)setStyle(effect.bV,{top:''});makeClipping(effect.bV);setStyle(effect.bV,{height:'0px'});show(bV);}},afterUpdateInternal:function(effect){with(Element){setStyle(effect.bV.firstChild,{bottom:(effect.dims[0]-effect.bV.clientHeight)+'px'});}},afterFinishInternal:function(effect){with(Element){undoClipping(effect.bV);if(/MSIE/.test(navigator.userAgent)){undoPositioned(effect.bV);undoPositioned(effect.bV.firstChild);}else{undoPositioned(effect.bV.firstChild);undoPositioned(effect.bV);}setStyle(effect.bV.firstChild,{bottom:oldInnerBottom});}}},arguments[1]||{}));};Effect.SlideUp=function(bV){bV=$(bV);Element.cleanWhitespace(bV);var oldInnerBottom=Element.getStyle(bV.firstChild,'bottom');return new Effect.Scale(bV,0,Object.extend({scaleContent:false,scaleX:false,scaleMode:'box',scaleFrom:100,restoreAfterFinish:true,beforeStartInternal:function(effect){with(Element){makePositioned(effect.bV);makePositioned(effect.bV.firstChild);if(window.opera)setStyle(effect.bV,{top:''});makeClipping(effect.bV);show(bV);}},afterUpdateInternal:function(effect){with(Element){setStyle(effect.bV.firstChild,{bottom:(effect.dims[0]-effect.bV.clientHeight)+'px'});}},afterFinishInternal:function(effect){with(Element){[hide,undoClipping].call(effect.bV);undoPositioned(effect.bV.firstChild);undoPositioned(effect.bV);setStyle(effect.bV.firstChild,{bottom:oldInnerBottom});}}},arguments[1]||{}));};Effect.Squish=function(bV){return new Effect.Scale(bV,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(effect){with(Element){makeClipping(effect.bV);}},afterFinishInternal:function(effect){with(Element){hide(effect.bV);undoClipping(effect.bV);}}});};Effect.Grow=function(bV){bV=$(bV);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var oldStyle={top:bV.style.top,left:bV.style.left,height:bV.style.height,width:bV.style.width,opacity:Element.getInlineOpacity(bV)};var dims=Element.getDimensions(bV);var initialMoveX,initialMoveY;var moveX,moveY;switch(options.direction){case 'top-left':initialMoveX=initialMoveY=moveX=moveY=0;break;case 'top-right':initialMoveX=dims.width;initialMoveY=moveY=0;moveX= -dims.width;break;case 'bottom-left':initialMoveX=moveX=0;initialMoveY=dims.height;moveY= -dims.height;break;case 'bottom-right':initialMoveX=dims.width;initialMoveY=dims.height;moveX= -dims.width;moveY= -dims.height;break;case 'center':initialMoveX=dims.width/2;initialMoveY=dims.height/2;moveX= -dims.width/2;moveY= -dims.height/2;break;}return new Effect.Move(bV,{x:initialMoveX,y:initialMoveY,duration:0.01,beforeSetup:function(effect){with(Element){hide(effect.bV);makeClipping(effect.bV);makePositioned(effect.bV);}},afterFinishInternal:function(effect){new Effect.Parallel([new Effect.Opacity(effect.bV,{sync:true,to:1.0,from:0.0,transition:options.opacityTransition}),new Effect.Move(effect.bV,{x:moveX,y:moveY,sync:true,transition:options.moveTransition}),new Effect.Scale(effect.bV,100,{scaleMode:{originalHeight:dims.height,originalWidth:dims.width},sync:true,scaleFrom:window.opera?1:0,transition:options.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(effect){with(Element){setStyle(effect.effects[0].bV,{height:'0px'});show(effect.effects[0].bV);}},afterFinishInternal:function(effect){with(Element){[undoClipping,undoPositioned].call(effect.effects[0].bV);setStyle(effect.effects[0].bV,oldStyle);}}},options))}});};Effect.Shrink=function(bV){bV=$(bV);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var oldStyle={top:bV.style.top,left:bV.style.left,height:bV.style.height,width:bV.style.width,opacity:Element.getInlineOpacity(bV)};var dims=Element.getDimensions(bV);var moveX,moveY;switch(options.direction){case 'top-left':moveX=moveY=0;break;case 'top-right':moveX=dims.width;moveY=0;break;case 'bottom-left':moveX=0;moveY=dims.height;break;case 'bottom-right':moveX=dims.width;moveY=dims.height;break;case 'center':moveX=dims.width/2;moveY=dims.height/2;break;}return new Effect.Parallel([new Effect.Opacity(bV,{sync:true,to:0.0,from:1.0,transition:options.opacityTransition}),new Effect.Scale(bV,window.opera?1:0,{sync:true,transition:options.scaleTransition,restoreAfterFinish:true}),new Effect.Move(bV,{x:moveX,y:moveY,sync:true,transition:options.moveTransition})],Object.extend({beforeStartInternal:function(effect){with(Element){[makePositioned,makeClipping].call(effect.effects[0].bV)}},afterFinishInternal:function(effect){with(Element){[hide,undoClipping,undoPositioned].call(effect.effects[0].bV);setStyle(effect.effects[0].bV,oldStyle);}}},options));};Effect.Pulsate=function(bV){bV=$(bV);var options=arguments[1]||{};var oldOpacity=Element.getInlineOpacity(bV);var transition=options.transition||Effect.Transitions.sinoidal;var reverser=function(pos){return transition(1-Effect.Transitions.pulse(pos))};reverser.bind(transition);return new Effect.Opacity(bV,Object.extend(Object.extend({duration:3.0,from:0,afterFinishInternal:function(effect){Element.setStyle(effect.bV,{opacity:oldOpacity});}},options),{transition:reverser}));};Effect.Fold=function(bV){bV=$(bV);var oldStyle={top:bV.style.top,left:bV.style.left,width:bV.style.width,height:bV.style.height};Element.makeClipping(bV);return new Effect.Scale(bV,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(effect){new Effect.Scale(bV,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(effect){with(Element){[hide,undoClipping].call(effect.bV);setStyle(effect.bV,oldStyle);}}});}},arguments[1]||{}));} 