String.prototype.parseColor=function(){var _1="#";if(this.slice(0,4)=="rgb("){var _2=this.slice(4,this.length-1).split(",");var i=0;do{_1+=parseInt(_2[i]).toColorPart();}while(++i<3);}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var i=1;i<4;i++){_1+=(this.charAt(i)+this.charAt(i)).toLowerCase();}}if(this.length==7){_1=this.toLowerCase();}}}return (_1.length==7?_1:(arguments[0]||this));};Element.collectTextNodes=function(_5){return $A($(_5).childNodes).collect(function(_6){return (_6.nodeType==3?_6.nodeValue:(_6.hasChildNodes()?Element.collectTextNodes(_6):""));}).flatten().join("");};Element.collectTextNodesIgnoreClass=function(_7,_8){return $A($(_7).childNodes).collect(function(_9){return (_9.nodeType==3?_9.nodeValue:((_9.hasChildNodes()&&!Element.hasClassName(_9,_8))?Element.collectTextNodes(_9):""));}).flatten().join("");};Element.setStyle=function(_a,_b){_a=$(_a);for(k in _b){_a.style[k.camelize()]=_b[k];}};Element.setContentZoom=function(_c,_d){Element.setStyle(_c,{fontSize:(_d/100)+"em"});if(navigator.appVersion.indexOf("AppleWebKit")>0){window.scrollBy(0,0);}};Element.getOpacity=function(_e){var _f;if(_f=Element.getStyle(_e,"opacity")){return parseFloat(_f);}if(_f=(Element.getStyle(_e,"filter")||"").match(/alpha\(opacity=(.*)\)/)){if(_f[1]){return parseFloat(_f[1])/100;}}return 1;};Element.setOpacity=function(_10,_11){_10=$(_10);if(_11==1){Element.setStyle(_10,{opacity:(/Gecko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:null});if(/MSIE/.test(navigator.userAgent)){Element.setStyle(_10,{filter:Element.getStyle(_10,"filter").replace(/alpha\([^\)]*\)/gi,"")});}}else{if(_11<0.00001){_11=0;}Element.setStyle(_10,{opacity:_11});if(/MSIE/.test(navigator.userAgent)){Element.setStyle(_10,{filter:Element.getStyle(_10,"filter").replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+_11*100+")"});}}};Element.getInlineOpacity=function(_12){return $(_12).style.opacity||"";};Element.childrenWithClassName=function(_13,_14){return $A($(_13).getElementsByTagName("*")).select(function(c){return Element.hasClassName(c,_14);});};Array.prototype.call=function(){var _16=arguments;this.each(function(f){f.apply(this,_16);});};var Effect={tagifyText:function(_18){var _19="position:relative";if(/MSIE/.test(navigator.userAgent)){_19+=";zoom:1";}_18=$(_18);$A(_18.childNodes).each(function(_1a){if(_1a.nodeType==3){_1a.nodeValue.toArray().each(function(_1b){_18.insertBefore(Builder.node("span",{style:_19},_1b==" "?String.fromCharCode(160):_1b),_1a);});Element.remove(_1a);}});},multiple:function(_1c,_1d){var _1e;if(((typeof _1c=="object")||(typeof _1c=="function"))&&(_1c.length)){_1e=_1c;}else{_1e=$(_1c).childNodes;}var _1f=Object.extend({speed:0.1,delay:0},arguments[2]||{});var _20=_1f.delay;$A(_1e).each(function(_21,_22){new _1d(_21,Object.extend(_1f,{delay:_22*_1f.speed+_20}));});},PAIRS:{"slide":["SlideDown","SlideUp"],"blind":["BlindDown","BlindUp"],"appear":["Appear","Fade"]},toggle:function(_23,_24){_23=$(_23);_24=(_24||"appear").toLowerCase();var _25=Object.extend({queue:{position:"end",scope:(_23.id||"global")}},arguments[2]||{});Effect[Element.visible(_23)?Effect.PAIRS[_24][1]:Effect.PAIRS[_24][0]](_23,_25);}};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(_2e){this.effects._each(_2e);},add:function(_2f){var _30=new Date().getTime();var _31=(typeof _2f.options.queue=="string")?_2f.options.queue:_2f.options.queue.position;switch(_31){case "front":this.effects.findAll(function(e){return e.state=="idle";}).each(function(e){e.startOn+=_2f.finishOn;e.finishOn+=_2f.finishOn;});break;case "end":_30=this.effects.pluck("finishOn").max()||_30;break;}_2f.startOn+=_30;_2f.finishOn+=_30;this.effects.push(_2f);if(!this.interval){this.interval=setInterval(this.loop.bind(this),40);}},remove:function(_34){this.effects=this.effects.reject(function(e){return e==_34;});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var _36=new Date().getTime();this.effects.invoke("loop",_36);}});Effect.Queues={instances:$H(),get:function(_37){if(typeof _37!="string"){return _37;}if(!this.instances[_37]){this.instances[_37]=new Effect.ScopedQueue();}return this.instances[_37];}};Effect.Queue=Effect.Queues.get("global");Effect.DefaultOptions={transition:Effect.Transitions.sinoidal,duration:1,fps:25,sync:false,from:0,to:1,delay:0,queue:"parallel"};Effect.Base=function(){};Effect.Base.prototype={position:null,start:function(_38){this.options=Object.extend(Object.extend({},Effect.DefaultOptions),_38||{});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(_39){if(_39>=this.startOn){if(_39>=this.finishOn){this.render(1);this.cancel();this.event("beforeFinish");if(this.finish){this.finish();}this.event("afterFinish");return;}var pos=(_39-this.startOn)/(this.finishOn-this.startOn);var _3b=Math.round(pos*this.options.fps*this.options.duration);if(_3b>this.currentFrame){this.render(pos);this.currentFrame=_3b;}}},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(_3d){if(this.options[_3d+"Internal"]){this.options[_3d+"Internal"](this);}if(this.options[_3d]){this.options[_3d](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(_3e){this.effects=_3e||[];this.start(arguments[1]);},update:function(_3f){this.effects.invoke("render",_3f);},finish:function(_40){this.effects.each(function(_41){_41.render(1);_41.cancel();_41.event("beforeFinish");if(_41.finish){_41.finish(_40);}_41.event("afterFinish");});}});Effect.Opacity=Class.create();Object.extend(Object.extend(Effect.Opacity.prototype,Effect.Base.prototype),{initialize:function(_42){this.element=$(_42);if(/MSIE/.test(navigator.userAgent)&&(!this.element.hasLayout)){Element.setStyle(this.element,{zoom:1});}var _43=Object.extend({from:Element.getOpacity(this.element)||0,to:1},arguments[1]||{});this.start(_43);},update:function(_44){Element.setOpacity(this.element,_44);}});Effect.Scale=Class.create();Object.extend(Object.extend(Effect.Scale.prototype,Effect.Base.prototype),{initialize:function(_45,_46){this.element=$(_45);var _47=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:_46},arguments[2]||{});this.start(_47);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=Element.getStyle(this.element,"position");this.originalStyle={};["top","left","width","height","fontSize"].each(function(k){this.originalStyle[k]=this.element.style[k];}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var _49=Element.getStyle(this.element,"font-size")||"100%";["em","px","%"].each(function(_4a){if(_49.indexOf(_4a)>0){this.fontSize=parseFloat(_49);this.fontSizeType=_4a;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth];}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth];}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];}},update:function(_4b){var _4c=(this.options.scaleFrom/100)+(this.factor*_4b);if(this.options.scaleContent&&this.fontSize){Element.setStyle(this.element,{fontSize:this.fontSize*_4c+this.fontSizeType});}this.setDimensions(this.dims[0]*_4c,this.dims[1]*_4c);},finish:function(_4d){if(this.restoreAfterFinish){Element.setStyle(this.element,this.originalStyle);}},setDimensions:function(_4e,_4f){var d={};if(this.options.scaleX){d.width=_4f+"px";}if(this.options.scaleY){d.height=_4e+"px";}if(this.options.scaleFromCenter){var _51=(_4e-this.dims[0])/2;var _52=(_4f-this.dims[1])/2;if(this.elementPositioning=="absolute"){if(this.options.scaleY){d.top=this.originalTop-_51+"px";}if(this.options.scaleX){d.left=this.originalLeft-_52+"px";}}else{if(this.options.scaleY){d.top=-_51+"px";}if(this.options.scaleX){d.left=-_52+"px";}}}Element.setStyle(this.element,d);}});Effect.Fade=function(_53){var _54=Element.getInlineOpacity(_53);var _55=Object.extend({from:Element.getOpacity(_53)||1,to:0,afterFinishInternal:function(_56){with(Element){if(_56.options.to!=0){return;}hide(_56.element);setStyle(_56.element,{opacity:_54});}}},arguments[1]||{});return new Effect.Opacity(_53,_55);};Effect.Appear=function(_57){var _58=Object.extend({from:(Element.getStyle(_57,"display")=="none"?0:Element.getOpacity(_57)||0),to:1,beforeSetup:function(_59){with(Element){setOpacity(_59.element,_59.options.from);show(_59.element);}}},arguments[1]||{});return new Effect.Opacity(_57,_58);};Effect.SlideDown=function(_5a){_5a=$(_5a);Element.cleanWhitespace(_5a);var _5b=Element.getStyle(_5a.firstChild,"bottom");var _5c=Element.getDimensions(_5a);return new Effect.Scale(_5a,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:_5c.height,originalWidth:_5c.width},restoreAfterFinish:true,afterSetup:function(_5d){with(Element){makePositioned(_5d.element);makePositioned(_5d.element.firstChild);if(window.opera){setStyle(_5d.element,{top:""});}makeClipping(_5d.element);setStyle(_5d.element,{height:"0px"});show(_5a);}},afterUpdateInternal:function(_5e){with(Element){setStyle(_5e.element.firstChild,{bottom:(_5e.dims[0]-_5e.element.clientHeight)+"px"});}},afterFinishInternal:function(_5f){with(Element){undoClipping(_5f.element);undoPositioned(_5f.element.firstChild);undoPositioned(_5f.element);setStyle(_5f.element.firstChild,{bottom:_5b});}}},arguments[1]||{}));};
