function SwitchMenu(obj){if(document.getElementById){var el=document.getElementById(obj),ar=document.getElementById("map_class").getElementsByTagName("div");if(el.style.display!="block"){for(var i=0;i<ar.length;i++)ar[i].style.display="none";el.style.display="block"}}};
function vPlaceHolder(){if(!document.getElementsByTagName)return true;ourForms=document.getElementsByTagName('form');var numForms=ourForms.length;for(var i=0;i<numForms;i++){var numFormElements=ourForms[i].elements.length;for(var j=0;j<numFormElements;j++){var el=ourForms[i].elements[j];if(el.type=="submit")continue;if((el.type=="text")||(el.type=="password")){var ourClassName=el.className;if(ourClassName.match('auto-clear')){if(el.value=='')el.value=el.title;el.onfocus=function(){if(this.value==this.title)this.value=''};if(el.captureEvents)el.captureEvents(Event.FOCUS);el.onblur=function(){if(this.value=='')this.value=this.title};if(el.captureEvents)el.captureEvents(Event.BLUR)}}}}};
window.onload=function(){vPlaceHolder()};
var browserName=navigator.appName,browserVer=parseInt(navigator.appVersion),version="",msie4=(browserName=="Microsoft Internet Explorer"&&browserVer>=4);if((browserName=="Netscape"&&browserVer>=3)||msie4||browserName=="Konqueror"||browserName=="Opera"){version="n3"}else version="n2"
function blurLink(theObject){if(msie4)theObject.blur()}
function decryptCharcode(n,start,end,offset){n=n+offset;if(offset>0&&n>end){n=start+(n-end-1)}else if(offset<0&&n<start)n=end-(start-n-1);return String.fromCharCode(n)}
function decryptString(enc,offset){var dec="",len=enc.length;for(var i=0;i<len;i++){var n=enc.charCodeAt(i);if(n>=0x2B&&n<=0x3A){dec+=decryptCharcode(n,0x2B,0x3A,offset)}else if(n>=0x40&&n<=0x5A){dec+=decryptCharcode(n,0x40,0x5A,offset)}else if(n>=0x61&&n<=0x7A){dec+=decryptCharcode(n,0x61,0x7A,offset)}else dec+=enc.charAt(i)};return dec}
function linkTo_UnCryptMailto(s){location.href=decryptString(s,-2)};
if(typeof deconcept=="undefined")var deconcept=new Object();if(typeof deconcept.util=="undefined")deconcept.util=new Object();if(typeof deconcept.SWFObjectUtil=="undefined")deconcept.SWFObjectUtil=new Object();deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById)return;this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1)this.setAttribute("swf",_1);if(id)this.setAttribute("id",id);if(w)this.setAttribute("width",w);if(h)this.setAttribute("height",h);if(_5)this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7)deconcept.SWFObject.doPrepUnload=true;if(c)this.addParam("bgcolor",c);var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9)this.setAttribute("redirectUrl",_9)};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true)},setAttribute:function(_e,_f){this.attributes[_e]=_f},getAttribute:function(_10){return this.attributes[_10]},addParam:function(_11,_12){this.params[_11]=_12},getParams:function(){return this.params},addVariable:function(_13,_14){this.variables[_13]=_14},getVariable:function(_15){return this.variables[_15]},getVariables:function(){return this.variables},getVariablePairs:function(){var _16=new Array(),key,_18=this.getVariables();for(key in _18)_16[_16.length]=key+"="+_18[key];return _16},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath)};_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a)_19+=[key]+"=\""+_1a[key]+"\" ";var _1c=this.getVariablePairs().join("&");if(_1c.length>0)_19+="flashvars=\""+_1c+"\"";_19+="/>"}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath)};_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d)_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";var _1f=this.getVariablePairs().join("&");if(_1f.length>0)_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";_19+="</object>"};return _19},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title)}};if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true}else if(this.getAttribute("redirectUrl")!="")document.location.replace(this.getAttribute("redirectUrl"));return false}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description)_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."))}else if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1,_26=3;while(axo)try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0])}catch(e){axo=null}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always"}catch(e){if(_23.major==6)return _23};try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(e){}};if(axo!=null)_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","))};return _23};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major)return false;if(this.major>fv.major)return true;if(this.minor<fv.minor)return false;if(this.minor>fv.minor)return true;if(this.rev<fv.rev)return false;return true};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null)return q;if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++)if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b)return _2d[i].substring((_2d[i].indexOf("=")+1))};return""}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i])if(typeof _2f[i][x]=="function")_2f[i][x]=function(){}}};if(deconcept.SWFObject.doPrepUnload)if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs)};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true};if(!document.getElementById&&document.all)document.getElementById=function(id){return document.all[id]};var getQueryParamValue=deconcept.util.getRequestParameter,FlashObject=deconcept.SWFObject,SWFObject=deconcept.SWFObject;
var Spry;if(!Spry)Spry={};Spry.forwards=1;Spry.backwards=2;if(!Spry.Effect)Spry.Effect={};Spry.Effect.Transitions={linearTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+(time/duration)*change},sinusoidalTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+((-Math.cos((time/duration)*Math.PI)/2)+0.5)*change},squareTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+Math.pow(time/duration,2)*change},squarerootTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+Math.sqrt(time/duration)*change},fifthTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+Math.sqrt((-Math.cos((time/duration)*Math.PI)/2)+0.5)*change},circleTransition:function(time,begin,change,duration){if(time>duration)return change+begin;var pos=time/duration;return begin+Math.sqrt(1-Math.pow((pos-1),2))*change},pulsateTransition:function(time,begin,change,duration){if(time>duration)return change+begin;return begin+(0.5+Math.sin(17*time/duration)/2)*change},growSpecificTransition:function(time,begin,change,duration){if(time>duration)return change+begin;var pos=time/duration;return begin+(5*Math.pow(pos,3)-6.4*Math.pow(pos,2)+2*pos)*change}};for(var trans in Spry.Effect.Transitions)Spry[trans]=Spry.Effect.Transitions[trans];Spry.Effect.Registry=function(){this.effects=[]};Spry.Effect.Registry.prototype.getRegisteredEffect=function(element,options){var a={};a.element=Spry.Effect.getElement(element);a.options=options;for(var i=0;i<this.effects.length;i++)if(this.effectsAreTheSame(this.effects[i],a))return this.effects[i].effect;return false};Spry.Effect.Registry.prototype.addEffect=function(effect,element,options){if(!this.getRegisteredEffect(element,options)){var len=this.effects.length;this.effects[len]={};var eff=this.effects[len];eff.effect=effect;eff.element=Spry.Effect.getElement(element);eff.options=options}};Spry.Effect.Registry.prototype.effectsAreTheSame=function(effectA,effectB){if(effectA.element!=effectB.element)return false;var compare=Spry.Effect.Utils.optionsAreIdentical(effectA.options,effectB.options);if(compare){if(typeof effectB.options.setup=='function')effectA.options.setup=effectB.options.setup;if(typeof effectB.options.finish=='function')effectA.options.finish=effectB.options.finish};return compare};var SpryRegistry=new Spry.Effect.Registry();if(!Spry.Effect.Utils)Spry.Effect.Utils={};Spry.Effect.Utils.showError=function(msg){alert('Spry.Effect ERR: '+msg)};Spry.Effect.Utils.showInitError=function(effect){Spry.Effect.Utils.showError('The '+effect+' class can\'t be accessed as a static function anymore. '+"\n"+'Please read Spry Effects migration documentation.');return false};Spry.Effect.Utils.Position=function(){this.x=0;this.y=0;this.units="px"};Spry.Effect.Utils.Rectangle=function(){this.width=0;this.height=0;this.units="px"};Spry.Effect.Utils.intToHex=function(integerNum){var result=integerNum.toString(16);if(result.length==1)result="0"+result;return result};Spry.Effect.Utils.hexToInt=function(hexStr){return parseInt(hexStr,16)};Spry.Effect.Utils.rgb=function(redInt,greenInt,blueInt){var intToHex=Spry.Effect.Utils.intToHex,redHex=intToHex(redInt),greenHex=intToHex(greenInt),blueHex=intToHex(blueInt);compositeColorHex=redHex.concat(greenHex,blueHex).toUpperCase();compositeColorHex='#'+compositeColorHex;return compositeColorHex};Spry.Effect.Utils.longColorVersion=function(color){if(color.match(/^#[0-9a-f]{3}$/i)){var tmp=color.split(''),color='#';for(var i=1;i<tmp.length;i++)color+=tmp[i]+''+tmp[i]};return color};Spry.Effect.Utils.camelize=function(stringToCamelize){if(stringToCamelize.indexOf('-')==-1)return stringToCamelize;var oStringList=stringToCamelize.split('-'),isFirstEntry=true,camelizedString='';for(var i=0;i<oStringList.length;i++)if(oStringList[i].length>0)if(isFirstEntry){camelizedString=oStringList[i];isFirstEntry=false}else{var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1)};return camelizedString};Spry.Effect.Utils.isPercentValue=function(value){var result=false;if(typeof value=='string'&&value.length>0&&value.lastIndexOf("%")>0)result=true;return result};Spry.Effect.Utils.getPercentValue=function(value){var result=0;try{result=Number(value.substring(0,value.lastIndexOf("%")))}catch(e){Spry.Effect.Utils.showError('Spry.Effect.Utils.getPercentValue: '+e)};return result};Spry.Effect.Utils.getPixelValue=function(value){var result=0;if(typeof value=='number')return value;var unitIndex=value.lastIndexOf("px");if(unitIndex==-1)unitIndex=value.length;try{result=parseInt(value.substring(0,unitIndex),10)}catch(e){};return result};Spry.Effect.Utils.getFirstChildElement=function(node){if(node){var childCurr=node.firstChild;while(childCurr){if(childCurr.nodeType==1)return childCurr;childCurr=childCurr.nextSibling}};return null};Spry.Effect.Utils.fetchChildImages=function(startEltIn,targetImagesOut){if(!startEltIn||startEltIn.nodeType!=1||!targetImagesOut)return;if(startEltIn.hasChildNodes()){var childImages=startEltIn.getElementsByTagName('img'),imageCnt=childImages.length;for(var i=0;i<imageCnt;i++){var imgCurr=childImages[i],dimensionsCurr=Spry.Effect.getDimensions(imgCurr);targetImagesOut.push([imgCurr,dimensionsCurr.width,dimensionsCurr.height])}}};Spry.Effect.Utils.optionsAreIdentical=function(optionsA,optionsB){if(optionsA==null&&optionsB==null)return true;if(optionsA!=null&&optionsB!=null){var objectCountA=0,objectCountB=0;for(var propA in optionsA)objectCountA++;for(var propB in optionsB)objectCountB++;if(objectCountA!=objectCountB)return false;for(var prop in optionsA){var typeA=typeof optionsA[prop],typeB=typeof optionsB[prop];if(typeA!=typeB||(typeA!='undefined'&&optionsA[prop]!=optionsB[prop]))return false};return true};return false};Spry.Effect.Utils.DoEffect=function(effectName,element,options){if(!options)var options={};options.name=effectName;var ef=SpryRegistry.getRegisteredEffect(element,options);if(!ef){ef=new Spry.Effect[effectName](element,options);SpryRegistry.addEffect(ef,element,options)};ef.start();return true};if(!Spry.Utils)Spry.Utils={};Spry.Utils.Notifier=function(){this.observers=[];this.suppressNotifications=0};Spry.Utils.Notifier.prototype.addObserver=function(observer){if(!observer)return;var len=this.observers.length;for(var i=0;i<len;i++)if(this.observers[i]==observer)return;this.observers[len]=observer};Spry.Utils.Notifier.prototype.removeObserver=function(observer){if(!observer)return;for(var i=0;i<this.observers.length;i++)if(this.observers[i]==observer){this.observers.splice(i,1);break}};Spry.Utils.Notifier.prototype.notifyObservers=function(methodName,data){if(!methodName)return;if(!this.suppressNotifications){var len=this.observers.length;for(var i=0;i<len;i++){var obs=this.observers[i];if(obs)if(typeof obs=="function"){obs(methodName,this,data)}else if(obs[methodName])obs[methodName](this,data)}}};Spry.Utils.Notifier.prototype.enableNotifications=function(){if(--this.suppressNotifications<0){this.suppressNotifications=0;Spry.Effect.Utils.showError("Unbalanced enableNotifications() call!\n")}};Spry.Utils.Notifier.prototype.disableNotifications=function(){++this.suppressNotifications};Spry.Effect.getElement=function(ele){var element=ele;if(typeof ele=="string")element=document.getElementById(ele);if(element==null)Spry.Effect.Utils.showError('Element "'+ele+'" not found.');return element};Spry.Effect.getStyleProp=function(element,prop){var value,camelized=Spry.Effect.Utils.camelize(prop);try{if(element.style)value=element.style[camelized];if(!value)if(document.defaultView&&document.defaultView.getComputedStyle){var css=document.defaultView.getComputedStyle(element,null);value=css?css.getPropertyValue(prop):null}else if(element.currentStyle)value=element.currentStyle[camelized]}catch(e){Spry.Effect.Utils.showError('Spry.Effect.getStyleProp: '+e)};return value=='auto'?null:value};Spry.Effect.setStyleProp=function(element,prop,value){try{element.style[Spry.Effect.Utils.camelize(prop)]=value}catch(e){Spry.Effect.Utils.showError('Spry.Effect.setStyleProp: '+e)}};Spry.Effect.getStylePropRegardlessOfDisplayState=function(element,prop,displayElement){var refElement=displayElement?displayElement:element,displayOrig=Spry.Effect.getStyleProp(refElement,'display'),visibilityOrig=Spry.Effect.getStyleProp(refElement,'visibility');if(displayOrig=='none'){Spry.Effect.setStyleProp(refElement,'visibility','hidden');Spry.Effect.setStyleProp(refElement,'display','block');if(window.opera)refElement.focus()};var styleProp=Spry.Effect.getStyleProp(element,prop);if(displayOrig=='none'){Spry.Effect.setStyleProp(refElement,'display','none');Spry.Effect.setStyleProp(refElement,'visibility',visibilityOrig)};return styleProp};Spry.Effect.makePositioned=function(element){var pos=Spry.Effect.getStyleProp(element,'position');if(!pos||pos=='static'){element.style.position='relative';if(window.opera){element.style.top=0;element.style.left=0}}};Spry.Effect.isInvisible=function(element){var propDisplay=Spry.Effect.getStyleProp(element,'display');if(propDisplay&&propDisplay.toLowerCase()=='none')return true;var propVisible=Spry.Effect.getStyleProp(element,'visibility');if(propVisible&&propVisible.toLowerCase()=='hidden')return true;return false};Spry.Effect.enforceVisible=function(element){var propDisplay=Spry.Effect.getStyleProp(element,'display');if(propDisplay&&propDisplay.toLowerCase()=='none')Spry.Effect.setStyleProp(element,'display','block');var propVisible=Spry.Effect.getStyleProp(element,'visibility');if(propVisible&&propVisible.toLowerCase()=='hidden')Spry.Effect.setStyleProp(element,'visibility','visible')};Spry.Effect.makeClipping=function(element){var overflow=Spry.Effect.getStyleProp(element,'overflow');if(!overflow||(overflow.toLowerCase()!='hidden'&&overflow.toLowerCase()!='scroll')){var heightCache=0,needsCache=/MSIE 7.0/.test(navigator.userAgent)&&/Windows NT/.test(navigator.userAgent);if(needsCache)heightCache=Spry.Effect.getDimensionsRegardlessOfDisplayState(element).height;Spry.Effect.setStyleProp(element,'overflow','hidden');if(needsCache)Spry.Effect.setStyleProp(element,'height',heightCache+'px')}};Spry.Effect.cleanWhitespace=function(element){var childCountInit=element.childNodes.length;for(var i=childCountInit-1;i>=0;i--){var node=element.childNodes[i];if(node.nodeType==3&&!/\S/.test(node.nodeValue))try{element.removeChild(node)}catch(e){Spry.Effect.Utils.showError('Spry.Effect.cleanWhitespace: '+e)}}};Spry.Effect.getComputedStyle=function(element){return/MSIE/.test(navigator.userAgent)?element.currentStyle:document.defaultView.getComputedStyle(element,null)};Spry.Effect.getDimensions=function(element){var dimensions=new Spry.Effect.Utils.Rectangle(),computedStyle=null;if(element.style.width&&/px/i.test(element.style.width)){dimensions.width=parseInt(element.style.width,10)}else{computedStyle=Spry.Effect.getComputedStyle(element);var tryComputedStyle=computedStyle&&computedStyle.width&&/px/i.test(computedStyle.width);if(tryComputedStyle)dimensions.width=parseInt(computedStyle.width,10);if(!tryComputedStyle||dimensions.width==0)dimensions.width=element.offsetWidth};if(element.style.height&&/px/i.test(element.style.height)){dimensions.height=parseInt(element.style.height,10)}else{if(!computedStyle)computedStyle=Spry.Effect.getComputedStyle(element);var tryComputedStyle=computedStyle&&computedStyle.height&&/px/i.test(computedStyle.height);if(tryComputedStyle)dimensions.height=parseInt(computedStyle.height,10);if(!tryComputedStyle||dimensions.height==0)dimensions.height=element.offsetHeight};return dimensions};Spry.Effect.getDimensionsRegardlessOfDisplayState=function(element,displayElement){var refElement=displayElement?displayElement:element,displayOrig=Spry.Effect.getStyleProp(refElement,'display'),visibilityOrig=Spry.Effect.getStyleProp(refElement,'visibility');if(displayOrig=='none'){Spry.Effect.setStyleProp(refElement,'visibility','hidden');Spry.Effect.setStyleProp(refElement,'display','block');if(window.opera)refElement.focus()};var dimensions=Spry.Effect.getDimensions(element);if(displayOrig=='none'){Spry.Effect.setStyleProp(refElement,'display','none');Spry.Effect.setStyleProp(refElement,'visibility',visibilityOrig)};return dimensions};Spry.Effect.getOpacity=function(element){var o=Spry.Effect.getStyleProp(element,"opacity");if(typeof o=='undefined'||o==null)o=1.0;return o};Spry.Effect.getBgColor=function(ele){return Spry.Effect.getStyleProp(ele,"background-color")};Spry.Effect.intPropStyle=function(e,prop){var i=parseInt(Spry.Effect.getStyleProp(e,prop),10);if(isNaN(i))return 0;return i};Spry.Effect.getPosition=function(element){var position=new Spry.Effect.Utils.Position(),computedStyle=null;if(element.style.left&&/px/i.test(element.style.left)){position.x=parseInt(element.style.left,10)}else{computedStyle=Spry.Effect.getComputedStyle(element);var tryComputedStyle=computedStyle&&computedStyle.left&&/px/i.test(computedStyle.left);if(tryComputedStyle)position.x=parseInt(computedStyle.left,10);if(!tryComputedStyle||position.x==0)position.x=element.offsetLeft};if(element.style.top&&/px/i.test(element.style.top)){position.y=parseInt(element.style.top,10)}else{if(!computedStyle)computedStyle=Spry.Effect.getComputedStyle(element);var tryComputedStyle=computedStyle&&computedStyle.top&&/px/i.test(computedStyle.top);if(tryComputedStyle)position.y=parseInt(computedStyle.top,10);if(!tryComputedStyle||position.y==0)position.y=element.offsetTop};return position};Spry.Effect.getOffsetPosition=Spry.Effect.getPosition;Spry.Effect.Animator=function(options){Spry.Utils.Notifier.call(this);this.name='Animator';this.element=null;this.startMilliseconds=0;this.repeat='none';this.isRunning=false;this.timer=null;this.cancelRemaining=0;if(!options)var options={};if(options.toggle){this.direction=false}else this.direction=Spry.forwards;var self=this;if(options.setup!=null)this.addObserver({onPreEffect:function(){try{self.options.setup(self.element,self)}catch(e){Spry.Effect.Utils.showError('Spry.Effect.Animator.prototype.start: setup callback: '+e)}}});if(options.finish!=null)this.addObserver({onPostEffect:function(){try{self.options.finish(self.element,self)}catch(e){Spry.Effect.Utils.showError('Spry.Effect.Animator.prototype.stop: finish callback: '+e)}}});this.options={duration:1000,toggle:false,transition:Spry.linearTransition,interval:16};this.setOptions(options);if(options.transition)this.setTransition(options.transition);if(options.fps)this.setFps(options.fps)};Spry.Effect.Animator.prototype=new Spry.Utils.Notifier();Spry.Effect.Animator.prototype.constructor=Spry.Utils.Animator;Spry.Effect.Animator.prototype.notStaticAnimator=true;Spry.Effect.Animator.prototype.setOptions=function(options){if(!options)return;for(var prop in options)this.options[prop]=options[prop]};Spry.Effect.Animator.prototype.setTransition=function(transition){if(typeof transition=='number'||transition=="1"||transition=="2"){switch(parseInt(transition,10)){case 1:transition=Spry.linearTransition;break;case 2:transition=Spry.sinusoidalTransition;break;default:Spry.Effect.Utils.showError('unknown transition')}}else if(typeof transition=='string')if(typeof window[transition]=='function'){transition=window[transition]}else if(typeof Spry[transition]=='function'){transition=Spry[transition]}else Spry.Effect.Utils.showError('unknown transition');this.options.transition=transition;if(typeof this.effectsArray!='undefined'){var l=this.effectsArray.length;for(var i=0;i<l;i++)this.effectsArray[i].effect.setTransition(transition)}};Spry.Effect.Animator.prototype.setDuration=function(duration){this.options.duration=duration;if(typeof this.effectsArray!='undefined'){var l=this.effectsArray.length;for(var i=0;i<l;i++)this.effectsArray[i].effect.setDuration(duration)}};Spry.Effect.Animator.prototype.setFps=function(fps){this.options.interval=parseInt(1000/fps,10);this.options.fps=fps;if(typeof this.effectsArray!='undefined'){var l=this.effectsArray.length;for(var i=0;i<l;i++)this.effectsArray[i].effect.setFps(fps)}};Spry.Effect.Animator.prototype.start=function(withoutTimer){if(!this.element)return;if(arguments.length==0)withoutTimer=false;if(this.isRunning)this.cancel();this.prepareStart();var currDate=new Date();this.startMilliseconds=currDate.getTime();if(this.element.id)this.element=document.getElementById(this.element.id);if(this.cancelRemaining!=0&&this.options.toggle){if(this.cancelRemaining<1&&typeof this.options.transition=='function'){var startTime=0,stopTime=this.options.duration,start=0,stop=1,emergency=0;this.cancelRemaining=Math.round(this.cancelRemaining*1000)/1000;var found=false,middle=0;while(!found){if(emergency++>this.options.duration)break;var half=startTime+((stopTime-startTime)/2);middle=Math.round(this.options.transition(half,1,-1,this.options.duration)*1000)/1000;if(middle==this.cancelRemaining){this.startMilliseconds-=half;found=true};if(middle<this.cancelRemaining){stopTime=half;stop=middle}else{startTime=half;start=middle}}};this.cancelRemaining=0};this.notifyObservers('onPreEffect',this);if(withoutTimer==false){var self=this;this.timer=setInterval(function(){self.drawEffect()},this.options.interval)};this.isRunning=true};Spry.Effect.Animator.prototype.stopFlagReset=function(){if(this.timer){clearInterval(this.timer);this.timer=null};this.startMilliseconds=0};Spry.Effect.Animator.prototype.stop=function(){this.stopFlagReset();this.notifyObservers('onPostEffect',this);this.isRunning=false};Spry.Effect.Animator.prototype.cancel=function(){var elapsed=this.getElapsedMilliseconds();if(this.startMilliseconds>0&&elapsed<this.options.duration)this.cancelRemaining=this.options.transition(elapsed,0,1,this.options.duration);this.stopFlagReset();this.notifyObservers('onCancel',this);this.isRunning=false};Spry.Effect.Animator.prototype.drawEffect=function(){var isRunning=true;this.notifyObservers('onStep',this);var timeElapsed=this.getElapsedMilliseconds();if(typeof this.options.transition!='function'){Spry.Effect.Utils.showError('unknown transition');return};this.animate();if(timeElapsed>this.options.duration){isRunning=false;this.stop()};return isRunning};Spry.Effect.Animator.prototype.getElapsedMilliseconds=function(){if(this.startMilliseconds>0){var currDate=new Date();return(currDate.getTime()-this.startMilliseconds)};return 0};Spry.Effect.Animator.prototype.doToggle=function(){if(!this.direction){this.direction=Spry.forwards;return};if(this.options.toggle==true)if(this.direction==Spry.forwards){this.direction=Spry.backwards;this.notifyObservers('onToggle',this)}else if(this.direction==Spry.backwards)this.direction=Spry.forwards};Spry.Effect.Animator.prototype.prepareStart=function(){if(this.options&&this.options.toggle)this.doToggle()};Spry.Effect.Animator.prototype.animate=function(){};Spry.Effect.Animator.prototype.onStep=function(el){if(el!=this)this.notifyObservers('onStep',this)};Spry.Effect.Move=function(element,fromPos,toPos,options){this.dynamicFromPos=false;if(arguments.length==3){options=toPos;toPos=fromPos;fromPos=Spry.Effect.getPosition(element);this.dynamicFromPos=true};Spry.Effect.Animator.call(this,options);this.name='Move';this.element=Spry.Effect.getElement(element);if(!this.element)return;if(fromPos.units!=toPos.units)Spry.Effect.Utils.showError('Spry.Effect.Move: Conflicting units ('+fromPos.units+', '+toPos.units+')');this.units=fromPos.units;this.startX=Number(fromPos.x);this.stopX=Number(toPos.x);this.startY=Number(fromPos.y);this.stopY=Number(toPos.y)};Spry.Effect.Move.prototype=new Spry.Effect.Animator();Spry.Effect.Move.prototype.constructor=Spry.Effect.Move;Spry.Effect.Move.prototype.animate=function(){var left=0,top=0,floor=Math.floor,elapsed=this.getElapsedMilliseconds();if(this.direction==Spry.forwards){left=floor(this.options.transition(elapsed,this.startX,this.stopX-this.startX,this.options.duration));top=floor(this.options.transition(elapsed,this.startY,this.stopY-this.startY,this.options.duration))}else if(this.direction==Spry.backwards){left=floor(this.options.transition(elapsed,this.stopX,this.startX-this.stopX,this.options.duration));top=floor(this.options.transition(elapsed,this.stopY,this.startY-this.stopY,this.options.duration))};this.element.style.left=left+this.units;this.element.style.top=top+this.units};Spry.Effect.Move.prototype.prepareStart=function(){if(this.options&&this.options.toggle)this.doToggle();if(this.dynamicFromPos==true){var fromPos=Spry.Effect.getPosition(this.element);this.startX=fromPos.x;this.startY=fromPos.y;this.rangeMoveX=this.startX-this.stopX;this.rangeMoveY=this.startY-this.stopY}};Spry.Effect.Size=function(element,fromRect,toRect,options){this.dynamicFromRect=false;if(arguments.length==3){options=toRect;toRect=fromRect;fromRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(element);this.dynamicFromRect=true};Spry.Effect.Animator.call(this,options);this.name='Size';this.element=Spry.Effect.getElement(element);if(!this.element)return;element=this.element;if(fromRect.units!=toRect.units){Spry.Effect.Utils.showError('Spry.Effect.Size: Conflicting units ('+fromRect.units+', '+toRect.units+')');return false};this.units=fromRect.units;var originalRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(element);this.originalWidth=originalRect.width;this.originalHeight=originalRect.height;this.startWidth=fromRect.width;this.startHeight=fromRect.height;this.stopWidth=toRect.width;this.stopHeight=toRect.height;this.childImages=new Array();if(this.options.useCSSBox){Spry.Effect.makePositioned(this.element);var intProp=Spry.Effect.intPropStyle;this.startFromBorder_top=intProp(element,'border-top-width');this.startFromBorder_bottom=intProp(element,'border-bottom-width');this.startFromBorder_left=intProp(element,'border-left-width');this.startFromBorder_right=intProp(element,'border-right-width');this.startFromPadding_top=intProp(element,'padding-top');this.startFromPadding_bottom=intProp(element,'padding-bottom');this.startFromPadding_left=intProp(element,'padding-left');this.startFromPadding_right=intProp(element,'padding-right');this.startFromMargin_top=intProp(element,'margin-top');this.startFromMargin_bottom=intProp(element,'margin-bottom');this.startFromMargin_right=intProp(element,'margin-right');this.startFromMargin_left=intProp(element,'margin-left');this.startLeft=intProp(element,'left');this.startTop=intProp(element,'top')};if(this.options.scaleContent)Spry.Effect.Utils.fetchChildImages(element,this.childImages);this.fontFactor=1.0;var fontSize=Spry.Effect.getStyleProp(this.element,'font-size');if(fontSize&&/em\s*$/.test(fontSize))this.fontFactor=parseFloat(fontSize);var isPercent=Spry.Effect.Utils.isPercentValue;if(isPercent(this.startWidth)){var startWidthPercent=Spry.Effect.Utils.getPercentValue(this.startWidth);this.startWidth=originalRect.width*(startWidthPercent/100)};if(isPercent(this.startHeight)){var startHeightPercent=Spry.Effect.Utils.getPercentValue(this.startHeight);this.startHeight=originalRect.height*(startHeightPercent/100)};if(isPercent(this.stopWidth)){var stopWidthPercent=Spry.Effect.Utils.getPercentValue(this.stopWidth);this.stopWidth=originalRect.width*(stopWidthPercent/100)};if(isPercent(this.stopHeight)){var stopHeightPercent=Spry.Effect.Utils.getPercentValue(this.stopHeight);this.stopHeight=originalRect.height*(stopHeightPercent/100)};this.enforceVisible=Spry.Effect.isInvisible(this.element)};Spry.Effect.Size.prototype=new Spry.Effect.Animator();Spry.Effect.Size.prototype.constructor=Spry.Effect.Size;Spry.Effect.Size.prototype.animate=function(){var width=0,height=0,fontSize=0,direction=0,floor=Math.floor,elapsed=this.getElapsedMilliseconds();if(this.direction==Spry.forwards){width=floor(this.options.transition(elapsed,this.startWidth,this.stopWidth-this.startWidth,this.options.duration));height=floor(this.options.transition(elapsed,this.startHeight,this.stopHeight-this.startHeight,this.options.duration));direction=1}else if(this.direction==Spry.backwards){width=floor(this.options.transition(elapsed,this.stopWidth,this.startWidth-this.stopWidth,this.options.duration));height=floor(this.options.transition(elapsed,this.stopHeight,this.startHeight-this.stopHeight,this.options.duration));direction=-1};var propFactor=width/this.originalWidth;fontSize=this.fontFactor*propFactor;var elStyle=this.element.style;if(width<0)width=0;if(height<0)height=0;elStyle.width=width+this.units;elStyle.height=height+this.units;if(typeof this.options.useCSSBox!='undefined'&&this.options.useCSSBox==true){var intProp=Spry.Effect.intPropStyle,origTop=intProp(this.element,'top'),origLeft=intProp(this.element,'left'),origMarginTop=intProp(this.element,'margin-top'),origMarginLeft=intProp(this.element,'margin-left'),widthFactor=propFactor,heightFactor=height/this.originalHeight,border_top=floor(this.startFromBorder_top*heightFactor),border_bottom=floor(this.startFromBorder_bottom*heightFactor),border_left=floor(this.startFromBorder_left*widthFactor),border_right=floor(this.startFromBorder_right*widthFactor),padding_top=floor(this.startFromPadding_top*heightFactor),padding_bottom=floor(this.startFromPadding_bottom*heightFactor),padding_left=floor(this.startFromPadding_left*widthFactor),padding_right=floor(this.startFromPadding_right*widthFactor),margin_top=floor(this.startFromMargin_top*heightFactor),margin_bottom=floor(this.startFromMargin_bottom*heightFactor),margin_right=floor(this.startFromMargin_right*widthFactor),margin_left=floor(this.startFromMargin_left*widthFactor);elStyle.borderTopWidth=border_top+this.units;elStyle.borderBottomWidth=border_bottom+this.units;elStyle.borderLeftWidth=border_left+this.units;elStyle.borderRightWidth=border_right+this.units;elStyle.paddingTop=padding_top+this.units;elStyle.paddingBottom=padding_bottom+this.units;elStyle.paddingLeft=padding_left+this.units;elStyle.paddingRight=padding_right+this.units;elStyle.marginTop=margin_top+this.units;elStyle.marginBottom=margin_bottom+this.units;elStyle.marginLeft=margin_left+this.units;elStyle.marginRight=margin_right+this.units;elStyle.left=floor(origLeft+origMarginLeft-margin_left)+this.units;elStyle.top=floor(origTop+origMarginTop-margin_top)+this.units};if(this.options.scaleContent){for(var i=0;i<this.childImages.length;i++){this.childImages[i][0].style.width=propFactor*this.childImages[i][1]+this.units;this.childImages[i][0].style.height=propFactor*this.childImages[i][2]+this.units};this.element.style.fontSize=fontSize+'em'};if(this.enforceVisible){Spry.Effect.enforceVisible(this.element);this.enforceVisible=false}};Spry.Effect.Size.prototype.prepareStart=function(){if(this.options&&this.options.toggle)this.doToggle();if(this.dynamicFromRect==true){var fromRect=Spry.Effect.getDimensions(this.element);this.startWidth=fromRect.width;this.startHeight=fromRect.height;this.widthRange=this.startWidth-this.stopWidth;this.heightRange=this.startHeight-this.stopHeight}};Spry.Effect.Opacity=function(element,startOpacity,stopOpacity,options){this.dynamicStartOpacity=false;if(arguments.length==3){options=stopOpacity;stopOpacity=startOpacity;startOpacity=Spry.Effect.getOpacity(element);this.dynamicStartOpacity=true};Spry.Effect.Animator.call(this,options);this.name='Opacity';this.element=Spry.Effect.getElement(element);if(!this.element)return;if(/MSIE/.test(navigator.userAgent)&&(!this.element.hasLayout))Spry.Effect.setStyleProp(this.element,'zoom','1');this.startOpacity=startOpacity;this.stopOpacity=stopOpacity;this.enforceVisible=Spry.Effect.isInvisible(this.element)};Spry.Effect.Opacity.prototype=new Spry.Effect.Animator();Spry.Effect.Opacity.prototype.constructor=Spry.Effect.Opacity;Spry.Effect.Opacity.prototype.animate=function(){var opacity=0,elapsed=this.getElapsedMilliseconds();if(this.direction==Spry.forwards){opacity=this.options.transition(elapsed,this.startOpacity,this.stopOpacity-this.startOpacity,this.options.duration)}else if(this.direction==Spry.backwards)opacity=this.options.transition(elapsed,this.stopOpacity,this.startOpacity-this.stopOpacity,this.options.duration);if(opacity<0)opacity=0;if(/MSIE/.test(navigator.userAgent)){var tmpval=Spry.Effect.getStyleProp(this.element,'filter');if(tmpval)tmpval=tmpval.replace(/alpha\(opacity=[0-9]{1,3}\)/g,'');this.element.style.filter=tmpval+"alpha(opacity="+Math.floor(opacity*100)+")"}else this.element.style.opacity=opacity;if(this.enforceVisible){Spry.Effect.enforceVisible(this.element);this.enforceVisible=false}};Spry.Effect.Opacity.prototype.prepareStart=function(){if(this.options&&this.options.toggle)this.doToggle();if(this.dynamicStartOpacity==true){this.startOpacity=Spry.Effect.getOpacity(this.element);this.opacityRange=this.startOpacity-this.stopOpacity}};Spry.Effect.Color=function(element,startColor,stopColor,options){this.dynamicStartColor=false;if(arguments.length==3){options=stopColor;stopColor=startColor;startColor=Spry.Effect.getBgColor(element);this.dynamicStartColor=true};Spry.Effect.Animator.call(this,options);this.name='Color';this.element=Spry.Effect.getElement(element);if(!this.element)return;this.startColor=startColor;this.stopColor=stopColor;this.startRedColor=Spry.Effect.Utils.hexToInt(startColor.substr(1,2));this.startGreenColor=Spry.Effect.Utils.hexToInt(startColor.substr(3,2));this.startBlueColor=Spry.Effect.Utils.hexToInt(startColor.substr(5,2));this.stopRedColor=Spry.Effect.Utils.hexToInt(stopColor.substr(1,2));this.stopGreenColor=Spry.Effect.Utils.hexToInt(stopColor.substr(3,2));this.stopBlueColor=Spry.Effect.Utils.hexToInt(stopColor.substr(5,2))};Spry.Effect.Color.prototype=new Spry.Effect.Animator();Spry.Effect.Color.prototype.constructor=Spry.Effect.Color;Spry.Effect.Color.prototype.animate=function(){var redColor=0,greenColor=0,blueColor=0,floor=Math.floor,elapsed=this.getElapsedMilliseconds();if(this.direction==Spry.forwards){redColor=floor(this.options.transition(elapsed,this.startRedColor,this.stopRedColor-this.startRedColor,this.options.duration));greenColor=floor(this.options.transition(elapsed,this.startGreenColor,this.stopGreenColor-this.startGreenColor,this.options.duration));blueColor=floor(this.options.transition(elapsed,this.startBlueColor,this.stopBlueColor-this.startBlueColor,this.options.duration))}else if(this.direction==Spry.backwards){redColor=floor(this.options.transition(elapsed,this.stopRedColor,this.startRedColor-this.stopRedColor,this.options.duration));greenColor=floor(this.options.transition(elapsed,this.stopGreenColor,this.startGreenColor-this.stopGreenColor,this.options.duration));blueColor=floor(this.options.transition(elapsed,this.stopBlueColor,this.startBlueColor-this.stopBlueColor,this.options.duration))};this.element.style.backgroundColor=Spry.Effect.Utils.rgb(redColor,greenColor,blueColor)};Spry.Effect.Color.prototype.prepareStart=function(){if(this.options&&this.options.toggle)this.doToggle();if(this.dynamicStartColor==true){this.startColor=Spry.Effect.getBgColor(element);this.startRedColor=Spry.Effect.Utils.hexToInt(startColor.substr(1,2));this.startGreenColor=Spry.Effect.Utils.hexToInt(startColor.substr(3,2));this.startBlueColor=Spry.Effect.Utils.hexToInt(startColor.substr(5,2));this.redColorRange=this.startRedColor-this.stopRedColor;this.greenColorRange=this.startGreenColor-this.stopGreenColor;this.blueColorRange=this.startBlueColor-this.stopBlueColor}};Spry.Effect.Cluster=function(options){Spry.Effect.Animator.call(this,options);this.name='Cluster';this.effectsArray=new Array();this.currIdx=-1;var _ClusteredEffect=function(effect,kind){this.effect=effect;this.kind=kind;this.isRunning=false};this.ClusteredEffect=_ClusteredEffect};Spry.Effect.Cluster.prototype=new Spry.Effect.Animator();Spry.Effect.Cluster.prototype.constructor=Spry.Effect.Cluster;Spry.Effect.Cluster.prototype.setInterval=function(interval){var l=this.effectsArray.length;this.options.interval=interval;for(var i=0;i<l;i++)this.effectsArray[i].effect.setInterval(interval)};Spry.Effect.Cluster.prototype.drawEffect=function(){var isRunning=true,allEffectsDidRun=false,baseEffectIsStillRunning=false,evalNextEffectsRunning=false;if((this.currIdx==-1&&this.direction==Spry.forwards)||(this.currIdx==this.effectsArray.length&&this.direction==Spry.backwards))this.initNextEffectsRunning();var start=this.direction==Spry.forwards?0:this.effectsArray.length-1,stop=this.direction==Spry.forwards?this.effectsArray.length:-1,step=this.direction==Spry.forwards?1:-1;for(var i=start;i!=stop;i+=step)if(this.effectsArray[i].isRunning==true){baseEffectIsStillRunning=this.effectsArray[i].effect.drawEffect();if(baseEffectIsStillRunning==false&&i==this.currIdx){this.effectsArray[i].isRunning=false;evalNextEffectsRunning=true}};if(evalNextEffectsRunning==true)allEffectsDidRun=this.initNextEffectsRunning();if(allEffectsDidRun==true){this.stop();isRunning=false;for(var i=0;i<this.effectsArray.length;i++)this.effectsArray[i].isRunning=false;this.currIdx=this.direction==Spry.forwards?this.effectsArray.length:-1};return isRunning};Spry.Effect.Cluster.prototype.initNextEffectsRunning=function(){var allEffectsDidRun=false,step=this.direction==Spry.forwards?1:-1,stop=this.direction==Spry.forwards?this.effectsArray.length:-1;this.currIdx+=step;if((this.currIdx>(this.effectsArray.length-1)&&this.direction==Spry.forwards)||(this.currIdx<0&&this.direction==Spry.backwards)){allEffectsDidRun=true}else for(var i=this.currIdx;i!=stop;i+=step){if((i>this.currIdx&&this.direction==Spry.forwards||i<this.currIdx&&this.direction==Spry.backwards)&&this.effectsArray[i].kind=="queue")break;this.effectsArray[i].effect.start(true);this.effectsArray[i].isRunning=true;this.currIdx=i};return allEffectsDidRun};Spry.Effect.Cluster.prototype.toggleCluster=function(){if(!this.direction){this.direction=Spry.forwards;return};if(this.options.toggle==true){if(this.direction==Spry.forwards){this.direction=Spry.backwards;this.notifyObservers('onToggle',this);this.currIdx=this.effectsArray.length}else if(this.direction==Spry.backwards){this.direction=Spry.forwards;this.currIdx=-1}}else if(this.direction==Spry.forwards){this.currIdx=-1}else if(this.direction==Spry.backwards)this.currIdx=this.effectsArray.length};Spry.Effect.Cluster.prototype.doToggle=function(){this.toggleCluster();for(var i=0;i<this.effectsArray.length;i++)if(this.effectsArray[i].effect.options&&(this.effectsArray[i].effect.options.toggle!=null))if(this.effectsArray[i].effect.options.toggle==true)this.effectsArray[i].effect.doToggle()};Spry.Effect.Cluster.prototype.cancel=function(){for(var i=0;i<this.effectsArray.length;i++)if(this.effectsArray[i].effect.isRunning)this.effectsArray[i].effect.cancel();var elapsed=this.getElapsedMilliseconds();if(this.startMilliseconds>0&&elapsed<this.options.duration)this.cancelRemaining=this.options.transition(elapsed,0,1,this.options.duration);this.stopFlagReset();this.notifyObservers('onCancel',this);this.isRunning=false};Spry.Effect.Cluster.prototype.addNextEffect=function(effect){effect.addObserver(this);this.effectsArray[this.effectsArray.length]=new this.ClusteredEffect(effect,"queue");if(this.effectsArray.length==1)this.element=effect.element};Spry.Effect.Cluster.prototype.addParallelEffect=function(effect){if(this.effectsArray.length==0||this.effectsArray[this.effectsArray.length-1].kind!='parallel')effect.addObserver(this);this.effectsArray[this.effectsArray.length]=new this.ClusteredEffect(effect,"parallel");if(this.effectsArray.length==1)this.element=effect.element};Spry.Effect.Cluster.prototype.prepareStart=function(){this.toggleCluster()};Spry.Effect.Fade=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Fade');Spry.Effect.Cluster.call(this,options);this.name='Fade';var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var durationInMilliseconds=1000,fromOpacity=0.0,toOpacity=100.0,doToggle=false,transition=Spry.fifthTransition,fps=60,originalOpacity=0;if(/MSIE/.test(navigator.userAgent)){originalOpacity=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(this.element,'filter').replace(/alpha\(opacity=([0-9]{1,3})\)/g,'$1'),10)}else originalOpacity=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(this.element,'opacity')*100,10);if(isNaN(originalOpacity))originalOpacity=100;if(options){if(options.duration!=null)durationInMilliseconds=options.duration;if(options.from!=null)if(Spry.Effect.Utils.isPercentValue(options.from)){fromOpacity=Spry.Effect.Utils.getPercentValue(options.from)*originalOpacity/100}else fromOpacity=options.from;if(options.to!=null)if(Spry.Effect.Utils.isPercentValue(options.to)){toOpacity=Spry.Effect.Utils.getPercentValue(options.to)*originalOpacity/100}else toOpacity=options.to;if(options.toggle!=null)doToggle=options.toggle;if(options.transition!=null)transition=options.transition;if(options.fps!=null){fps=options.fps}else this.options.transition=transition};fromOpacity=fromOpacity/100.0;toOpacity=toOpacity/100.0;options={duration:durationInMilliseconds,toggle:doToggle,transition:transition,from:fromOpacity,to:toOpacity,fps:fps};var fadeEffect=new Spry.Effect.Opacity(element,fromOpacity,toOpacity,options);this.addNextEffect(fadeEffect)};Spry.Effect.Fade.prototype=new Spry.Effect.Cluster();Spry.Effect.Fade.prototype.constructor=Spry.Effect.Fade;Spry.Effect.Blind=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Blind');Spry.Effect.Cluster.call(this,options);this.name='Blind';var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var durationInMilliseconds=1000,doToggle=false,kindOfTransition=Spry.circleTransition,fps=60,doScaleContent=false;Spry.Effect.makeClipping(element);var originalRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(element),fromHeightPx=originalRect.height,toHeightPx=0,optionFrom=options?options.from:originalRect.height,optionTo=options?options.to:0,fullCSSBox=false;if(options){if(options.duration!=null)durationInMilliseconds=options.duration;if(options.from!=null)if(Spry.Effect.Utils.isPercentValue(options.from)){fromHeightPx=Spry.Effect.Utils.getPercentValue(options.from)*originalRect.height/100}else fromHeightPx=Spry.Effect.Utils.getPixelValue(options.from);if(options.to!=null)if(Spry.Effect.Utils.isPercentValue(options.to)){toHeightPx=Spry.Effect.Utils.getPercentValue(options.to)*originalRect.height/100}else toHeightPx=Spry.Effect.Utils.getPixelValue(options.to);if(options.toggle!=null)doToggle=options.toggle;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps;if(options.useCSSBox!=null)fullCSSBox=options.useCSSBox};var fromRect=new Spry.Effect.Utils.Rectangle();fromRect.width=originalRect.width;fromRect.height=fromHeightPx;var toRect=new Spry.Effect.Utils.Rectangle();toRect.width=originalRect.width;toRect.height=toHeightPx;options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,scaleContent:doScaleContent,useCSSBox:fullCSSBox,from:optionFrom,to:optionTo,fps:fps};var blindEffect=new Spry.Effect.Size(element,fromRect,toRect,options);this.addNextEffect(blindEffect)};Spry.Effect.Blind.prototype=new Spry.Effect.Cluster();Spry.Effect.Blind.prototype.constructor=Spry.Effect.Blind;Spry.Effect.Highlight=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Highlight');Spry.Effect.Cluster.call(this,options);this.name='Highlight';var durationInMilliseconds=1000,toColor="#ffffff",doToggle=false,kindOfTransition=Spry.sinusoidalTransition,fps=60,element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var fromColor=Spry.Effect.getBgColor(element);if(fromColor=="transparent")fromColor="#ffff99";if(options){if(options.duration!=null)durationInMilliseconds=options.duration;if(options.from!=null)fromColor=options.from;if(options.to!=null)toColor=options.to;if(options.toggle!=null)doToggle=options.toggle;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps};if(fromColor.indexOf('rgb')!=-1)var fromColor=Spry.Effect.Utils.rgb(parseInt(fromColor.substring(fromColor.indexOf('(')+1,fromColor.indexOf(',')),10),parseInt(fromColor.substring(fromColor.indexOf(',')+1,fromColor.lastIndexOf(',')),10),parseInt(fromColor.substring(fromColor.lastIndexOf(',')+1,fromColor.indexOf(')')),10));if(toColor.indexOf('rgb')!=-1)var toColor=Spry.Effect.Utils.rgb(parseInt(toColor.substring(toColor.indexOf('(')+1,toColor.indexOf(',')),10),parseInt(toColor.substring(toColor.indexOf(',')+1,toColor.lastIndexOf(',')),10),parseInt(toColor.substring(toColor.lastIndexOf(',')+1,toColor.indexOf(')')),10));var fromColor=Spry.Effect.Utils.longColorVersion(fromColor),toColor=Spry.Effect.Utils.longColorVersion(toColor);this.restoreBackgroundImage=Spry.Effect.getStyleProp(element,'background-image');options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,fps:fps};var highlightEffect=new Spry.Effect.Color(element,fromColor,toColor,options);this.addNextEffect(highlightEffect);this.addObserver({onPreEffect:function(effect){Spry.Effect.setStyleProp(effect.element,'background-image','none')},onPostEffect:function(effect){Spry.Effect.setStyleProp(effect.element,'background-image',effect.restoreBackgroundImage);if(effect.direction==Spry.forwards&&effect.options.restoreColor)Spry.Effect.setStyleProp(element,'background-color',effect.options.restoreColor)}})};Spry.Effect.Highlight.prototype=new Spry.Effect.Cluster();Spry.Effect.Highlight.prototype.constructor=Spry.Effect.Highlight;Spry.Effect.Slide=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Slide');Spry.Effect.Cluster.call(this,options);this.name='Slide';var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var durationInMilliseconds=1000,doToggle=false,kindOfTransition=Spry.sinusoidalTransition,fps=60,slideHorizontally=false,firstChildElt=Spry.Effect.Utils.getFirstChildElement(element),direction=-1;if(/MSIE 7.0/.test(navigator.userAgent)&&/Windows NT/.test(navigator.userAgent))Spry.Effect.makePositioned(element);Spry.Effect.makeClipping(element);if(/MSIE 6.0/.test(navigator.userAgent)&&/Windows NT/.test(navigator.userAgent)){var pos=Spry.Effect.getStyleProp(element,'position');if(pos&&(pos=='static'||pos=='fixed')){Spry.Effect.setStyleProp(element,'position','relative');Spry.Effect.setStyleProp(element,'top','');Spry.Effect.setStyleProp(element,'left','')}};if(firstChildElt){Spry.Effect.makePositioned(firstChildElt);Spry.Effect.makeClipping(firstChildElt);var childRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(firstChildElt,element);Spry.Effect.setStyleProp(firstChildElt,'width',childRect.width+'px')};var fromDim=Spry.Effect.getDimensionsRegardlessOfDisplayState(element),initDim=new Spry.Effect.Utils.Rectangle(),toDim=new Spry.Effect.Utils.Rectangle();initDim.width=toDim.width=fromDim.width;initDim.height=toDim.height=fromDim.height;if(!this.options.to){if(!options)options={};options.to='0%'};if(options&&options.horizontal!==null&&options.horizontal===true)slideHorizontally=true;if(options.duration!=null)durationInMilliseconds=options.duration;if(options.from!=null)if(slideHorizontally){if(Spry.Effect.Utils.isPercentValue(options.from)){fromDim.width=initDim.width*Spry.Effect.Utils.getPercentValue(options.from)/100}else fromDim.width=Spry.Effect.Utils.getPixelValue(options.from)}else if(Spry.Effect.Utils.isPercentValue(options.from)){fromDim.height=initDim.height*Spry.Effect.Utils.getPercentValue(options.from)/100}else fromDim.height=Spry.Effect.Utils.getPixelValue(options.from);if(options.to!=null)if(slideHorizontally){if(Spry.Effect.Utils.isPercentValue(options.to)){toDim.width=initDim.width*Spry.Effect.Utils.getPercentValue(options.to)/100}else toDim.width=Spry.Effect.Utils.getPixelValue(options.to)}else if(Spry.Effect.Utils.isPercentValue(options.to)){toDim.height=initDim.height*Spry.Effect.Utils.getPercentValue(options.to)/100}else toDim.height=Spry.Effect.Utils.getPixelValue(options.to);if(options.toggle!=null)doToggle=options.toggle;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps;options={duration:durationInMilliseconds,transition:kindOfTransition,scaleContent:false,toggle:doToggle,fps:fps};var size=new Spry.Effect.Size(element,fromDim,toDim,options);this.addParallelEffect(size);if((fromDim.width<toDim.width&&slideHorizontally)||(fromDim.height<toDim.height&&!slideHorizontally))direction=1;var fromPos=new Spry.Effect.Utils.Position(),toPos=new Spry.Effect.Utils.Position();toPos.x=fromPos.x=Spry.Effect.intPropStyle(firstChildElt,'left');toPos.y=fromPos.y=Spry.Effect.intPropStyle(firstChildElt,'top');toPos.units=fromPos.units;if(slideHorizontally){toPos.x=parseInt(fromPos.x+direction*(fromDim.width-toDim.width),10)}else toPos.y=parseInt(fromPos.y+direction*(fromDim.height-toDim.height),10);if(direction==1){var tmp=fromPos,fromPos=toPos,toPos=tmp};options={duration:durationInMilliseconds,transition:kindOfTransition,toggle:doToggle,from:fromPos,to:toPos,fps:fps};var move=new Spry.Effect.Move(firstChildElt,fromPos,toPos,options);this.addParallelEffect(move)};Spry.Effect.Slide.prototype=new Spry.Effect.Cluster();Spry.Effect.Slide.prototype.constructor=Spry.Effect.Slide;Spry.Effect.Grow=function(element,options){if(!element)return;if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Grow');Spry.Effect.Cluster.call(this,options);this.name='Grow';var durationInMilliseconds=1000,doToggle=false,doScaleContent=true,calcHeight=false,growFromCenter=true,fullCSSBox=false,kindOfTransition=Spry.squareTransition,fps=60,element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;Spry.Effect.makeClipping(element);var dimRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(element),originalWidth=dimRect.width,originalHeight=dimRect.height,propFactor=(originalWidth==0)?1:originalHeight/originalWidth,fromRect=new Spry.Effect.Utils.Rectangle();fromRect.width=0;fromRect.height=0;var toRect=new Spry.Effect.Utils.Rectangle();toRect.width=originalWidth;toRect.height=originalHeight;var optionFrom=options?options.from:dimRect.width,optionTo=options?options.to:0,pixelValue=Spry.Effect.Utils.getPixelValue;if(options){if(options.growCenter!=null)growFromCenter=options.growCenter;if(options.duration!=null)durationInMilliseconds=options.duration;if(options.useCSSBox!=null)fullCSSBox=options.useCSSBox;if(options.scaleContent!=null)doScaleContent=options.scaleContent;if(options.from!=null)if(Spry.Effect.Utils.isPercentValue(options.from)){fromRect.width=originalWidth*(Spry.Effect.Utils.getPercentValue(options.from)/100);fromRect.height=originalHeight*(Spry.Effect.Utils.getPercentValue(options.from)/100)}else if(calcHeight){fromRect.height=pixelValue(options.from);fromRect.width=pixelValue(options.from)/propFactor}else{fromRect.width=pixelValue(options.from);fromRect.height=propFactor*pixelValue(options.from)};if(options.to!=null)if(Spry.Effect.Utils.isPercentValue(options.to)){toRect.width=originalWidth*(Spry.Effect.Utils.getPercentValue(options.to)/100);toRect.height=originalHeight*(Spry.Effect.Utils.getPercentValue(options.to)/100)}else if(calcHeight){toRect.height=pixelValue(options.to);toRect.width=pixelValue(options.to)/propFactor}else{toRect.width=pixelValue(options.to);toRect.height=propFactor*pixelValue(options.to)};if(options.toggle!=null)doToggle=options.toggle;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps};options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,scaleContent:doScaleContent,useCSSBox:fullCSSBox,fps:fps};var sizeEffect=new Spry.Effect.Size(element,fromRect,toRect,options);this.addParallelEffect(sizeEffect);if(growFromCenter){Spry.Effect.makePositioned(element);var startOffsetPosition=new Spry.Effect.Utils.Position();startOffsetPosition.x=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(element,"left"),10);startOffsetPosition.y=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(element,"top"),10);if(!startOffsetPosition.x)startOffsetPosition.x=0;if(!startOffsetPosition.y)startOffsetPosition.y=0;options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,from:optionFrom,to:optionTo,fps:fps};var fromPos=new Spry.Effect.Utils.Position();fromPos.x=startOffsetPosition.x+(originalWidth-fromRect.width)/2.0;fromPos.y=startOffsetPosition.y+(originalHeight-fromRect.height)/2.0;var toPos=new Spry.Effect.Utils.Position();toPos.x=startOffsetPosition.x+(originalWidth-toRect.width)/2.0;toPos.y=startOffsetPosition.y+(originalHeight-toRect.height)/2.0;var moveEffect=new Spry.Effect.Move(element,fromPos,toPos,options);this.addParallelEffect(moveEffect)}};Spry.Effect.Grow.prototype=new Spry.Effect.Cluster();Spry.Effect.Grow.prototype.constructor=Spry.Effect.Grow;Spry.Effect.Shake=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Shake');Spry.Effect.Cluster.call(this,options);this.options.direction=false;if(this.options.toggle)this.options.toggle=false;this.name='Shake';var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var durationInMilliseconds=100,kindOfTransition=Spry.linearTransition,fps=60,steps=4;if(options){if(options.duration!=null)steps=Math.ceil(this.options.duration/durationInMilliseconds)-1;if(options.fps!=null)fps=options.fps;if(options.transition!=null)kindOfTransition=options.transition};Spry.Effect.makePositioned(element);var startOffsetPosition=new Spry.Effect.Utils.Position();startOffsetPosition.x=parseInt(Spry.Effect.getStyleProp(element,"left"),10);startOffsetPosition.y=parseInt(Spry.Effect.getStyleProp(element,"top"),10);if(!startOffsetPosition.x)startOffsetPosition.x=0;if(!startOffsetPosition.y)startOffsetPosition.y=0;var centerPos=new Spry.Effect.Utils.Position();centerPos.x=startOffsetPosition.x;centerPos.y=startOffsetPosition.y;var rightPos=new Spry.Effect.Utils.Position();rightPos.x=startOffsetPosition.x+20;rightPos.y=startOffsetPosition.y+0;var leftPos=new Spry.Effect.Utils.Position();leftPos.x=startOffsetPosition.x+ -20;leftPos.y=startOffsetPosition.y+0;options={duration:Math.ceil(durationInMilliseconds/2),toggle:false,fps:fps,transition:kindOfTransition};var effect=new Spry.Effect.Move(element,centerPos,rightPos,options);this.addNextEffect(effect);options={duration:durationInMilliseconds,toggle:false,fps:fps,transition:kindOfTransition};var effectToRight=new Spry.Effect.Move(element,rightPos,leftPos,options),effectToLeft=new Spry.Effect.Move(element,leftPos,rightPos,options);for(var i=0;i<steps;i++)if(i%2==0){this.addNextEffect(effectToRight)}else this.addNextEffect(effectToLeft);var pos=(steps%2==0)?rightPos:leftPos;options={duration:Math.ceil(durationInMilliseconds/2),toggle:false,fps:fps,transition:kindOfTransition};var effect=new Spry.Effect.Move(element,pos,centerPos,options);this.addNextEffect(effect)};Spry.Effect.Shake.prototype=new Spry.Effect.Cluster();Spry.Effect.Shake.prototype.constructor=Spry.Effect.Shake;Spry.Effect.Shake.prototype.doToggle=function(){};Spry.Effect.Squish=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Squish');if(!options)options={};if(!options.to)options.to='0%';if(!options.from)options.from='100%';options.growCenter=false;Spry.Effect.Grow.call(this,element,options);this.name='Squish'};Spry.Effect.Squish.prototype=new Spry.Effect.Grow();Spry.Effect.Squish.prototype.constructor=Spry.Effect.Squish;Spry.Effect.Pulsate=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Pulsate');Spry.Effect.Cluster.call(this,options);this.options.direction=false;if(this.options.toggle)this.options.toggle=false;var element=Spry.Effect.getElement(element),originalOpacity=0;this.element=element;if(!this.element)return;this.name='Pulsate';var durationInMilliseconds=100,fromOpacity=100.0,toOpacity=0.0,doToggle=false,kindOfTransition=Spry.linearTransition,fps=60;if(/MSIE/.test(navigator.userAgent)){originalOpacity=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(this.element,'filter').replace(/alpha\(opacity=([0-9]{1,3})\)/g,'$1'),10)}else originalOpacity=parseInt(Spry.Effect.getStylePropRegardlessOfDisplayState(this.element,'opacity')*100,10);if(isNaN(originalOpacity))originalOpacity=100;if(options){if(options.from!=null)if(Spry.Effect.Utils.isPercentValue(options.from)){fromOpacity=Spry.Effect.Utils.getPercentValue(options.from)*originalOpacity/100}else fromOpacity=options.from;if(options.to!=null)if(Spry.Effect.Utils.isPercentValue(options.to)){toOpacity=Spry.Effect.Utils.getPercentValue(options.to)*originalOpacity/100}else toOpacity=options.to;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps};options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,fps:fps};fromOpacity=fromOpacity/100.0;toOpacity=toOpacity/100.0;var fadeEffect=new Spry.Effect.Opacity(element,fromOpacity,toOpacity,options),appearEffect=new Spry.Effect.Opacity(element,toOpacity,fromOpacity,options),steps=parseInt(this.options.duration/200,10);for(var i=0;i<steps;i++){this.addNextEffect(fadeEffect);this.addNextEffect(appearEffect)}};Spry.Effect.Pulsate.prototype=new Spry.Effect.Cluster();Spry.Effect.Pulsate.prototype.constructor=Spry.Effect.Pulsate;Spry.Effect.Pulsate.prototype.doToggle=function(){};Spry.Effect.Puff=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Puff');Spry.Effect.Cluster.call(this,options);var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;this.name='Puff';var doToggle=false,doScaleContent=false,durationInMilliseconds=1000,kindOfTransition=Spry.fifthTransition,fps=60;Spry.Effect.makePositioned(element);if(options){if(options.toggle!=null)doToggle=options.toggle;if(options.duration!=null)durationInMilliseconds=options.duration;if(options.transition!=null)kindOfTransition=options.transition;if(options.fps!=null)fps=options.fps};var originalRect=Spry.Effect.getDimensions(element),startWidth=originalRect.width,startHeight=originalRect.height;options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,fps:fps};var fromOpacity=1.0,toOpacity=0.0,opacityEffect=new Spry.Effect.Opacity(element,fromOpacity,toOpacity,options);this.addParallelEffect(opacityEffect);var fromPos=Spry.Effect.getPosition(element),toPos=new Spry.Effect.Utils.Position();toPos.x=startWidth/2.0*-1.0;toPos.y=startHeight/2.0*-1.0;options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,from:fromPos,to:toPos,fps:fps};var moveEffect=new Spry.Effect.Move(element,fromPos,toPos,options);this.addParallelEffect(moveEffect);var self=this;this.addObserver({onPreEffect:function(){if(self.direction==Spry.backwards)self.element.style.display='block'},onPostEffect:function(){if(self.direction==Spry.forwards)self.element.style.display='none'}})};Spry.Effect.Puff.prototype=new Spry.Effect.Cluster();Spry.Effect.Puff.prototype.constructor=Spry.Effect.Puff;Spry.Effect.DropOut=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('DropOut');Spry.Effect.Cluster.call(this,options);var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;var durationInMilliseconds=1000,fps=60,kindOfTransition=Spry.fifthTransition,direction=Spry.forwards,doToggle=false;this.name='DropOut';Spry.Effect.makePositioned(element);if(options){if(options.duration!=null)durationInMilliseconds=options.duration;if(options.toggle!=null)doToggle=options.toggle;if(options.fps!=null)fps=options.fps;if(options.transition!=null)kindOfTransition=options.transition;if(options.dropIn!=null)direction=-1};var startOffsetPosition=new Spry.Effect.Utils.Position();startOffsetPosition.x=parseInt(Spry.Effect.getStyleProp(element,"left"),10);startOffsetPosition.y=parseInt(Spry.Effect.getStyleProp(element,"top"),10);if(!startOffsetPosition.x)startOffsetPosition.x=0;if(!startOffsetPosition.y)startOffsetPosition.y=0;var fromPos=new Spry.Effect.Utils.Position();fromPos.x=startOffsetPosition.x+0;fromPos.y=startOffsetPosition.y+0;var toPos=new Spry.Effect.Utils.Position();toPos.x=startOffsetPosition.x+0;toPos.y=startOffsetPosition.y+(direction*160);options={from:fromPos,to:toPos,duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,fps:fps};var moveEffect=new Spry.Effect.Move(element,options.from,options.to,options);this.addParallelEffect(moveEffect);var fromOpacity=1.0,toOpacity=0.0;options={duration:durationInMilliseconds,toggle:doToggle,transition:kindOfTransition,fps:fps};var opacityEffect=new Spry.Effect.Opacity(element,fromOpacity,toOpacity,options);this.addParallelEffect(opacityEffect);var self=this;this.addObserver({onPreEffect:function(){self.element.style.display='block'},onPostEffect:function(){if(self.direction==Spry.forwards)self.element.style.display='none'}})};Spry.Effect.DropOut.prototype=new Spry.Effect.Cluster();Spry.Effect.DropOut.prototype.constructor=Spry.Effect.DropOut;Spry.Effect.Fold=function(element,options){if(!this.notStaticAnimator)return Spry.Effect.Utils.showInitError('Fold');Spry.Effect.Cluster.call(this,options);var element=Spry.Effect.getElement(element);this.element=element;if(!this.element)return;this.name='Fold';var durationInMilliseconds=1000,doToggle=false,doScaleContent=true,fullCSSBox=false,kindOfTransition=Spry.fifthTransition,fps=fps;Spry.Effect.makeClipping(element);var originalRect=Spry.Effect.getDimensionsRegardlessOfDisplayState(element),startWidth=originalRect.width,startHeight=originalRect.height,stopWidth=startWidth,stopHeight=startHeight/5,fromRect=new Spry.Effect.Utils.Rectangle();fromRect.width=startWidth;fromRect.height=startHeight;var toRect=new Spry.Effect.Utils.Rectangle();toRect.width=stopWidth;toRect.height=stopHeight;if(options){if(options.duration!=null)durationInMilliseconds=Math.ceil(options.duration/2);if(options.toggle!=null)doToggle=options.toggle;if(options.useCSSBox!=null)fullCSSBox=options.useCSSBox;if(options.fps!=null)fps=options.fps;if(options.transition!=null)kindOfTransition=options.transition};options={duration:durationInMilliseconds,toggle:doToggle,scaleContent:doScaleContent,useCSSBox:fullCSSBox,transition:kindOfTransition,fps:fps};var sizeEffect=new Spry.Effect.Size(element,fromRect,toRect,options);this.addNextEffect(sizeEffect);fromRect.width=toRect.width;fromRect.height=toRect.height;toRect.width='0%';var sizeEffect=new Spry.Effect.Size(element,fromRect,toRect,options);this.addNextEffect(sizeEffect)};Spry.Effect.Fold.prototype=new Spry.Effect.Cluster();Spry.Effect.Fold.prototype.constructor=Spry.Effect.Fold;Spry.Effect.DoFade=function(element,options){return Spry.Effect.Utils.DoEffect('Fade',element,options)};Spry.Effect.DoBlind=function(element,options){return Spry.Effect.Utils.DoEffect('Blind',element,options)};Spry.Effect.DoHighlight=function(element,options){return Spry.Effect.Utils.DoEffect('Highlight',element,options)};Spry.Effect.DoSlide=function(element,options){return Spry.Effect.Utils.DoEffect('Slide',element,options)};Spry.Effect.DoGrow=function(element,options){return Spry.Effect.Utils.DoEffect('Grow',element,options)};Spry.Effect.DoShake=function(element,options){return Spry.Effect.Utils.DoEffect('Shake',element,options)};Spry.Effect.DoSquish=function(element,options){return Spry.Effect.Utils.DoEffect('Squish',element,options)};Spry.Effect.DoPulsate=function(element,options){return Spry.Effect.Utils.DoEffect('Pulsate',element,options)};Spry.Effect.DoPuff=function(element,options){return Spry.Effect.Utils.DoEffect('Puff',element,options)};Spry.Effect.DoDropOut=function(element,options){return Spry.Effect.Utils.DoEffect('DropOut',element,options)};Spry.Effect.DoFold=function(element,options){return Spry.Effect.Utils.DoEffect('Fold',element,options)};
var KIND_SEL_ID='kind',SUBKIND_SEL_ID='subkind',DOING_SEL_ID='doing',PROPERTY_PREFIX_EL_ID='req',KIND_ANCHOR='k',DOING_ANCHOR='d',SUBKIND_ANCHOR='sk',PROPERTY_ANCHOR='p',sAjaxBusyIcon="<div><img src='/fileadmin/img/spinner.gif'></div>",SUBKIND_BLOCK_ID='subkind_block',KIND_BLOK_ID='kind_block',PROPERTIES_BLOCK_ID='checkboxlist',CHECKBOXLIST_BLOCK_ID='checkboxlist',DOING_BLOCK_ID='doings_block',SITE_URL_HIDDEN_ID='site_url',URL_PARAMS_HIDDEN_ID='url_params',sAnchorKindPosition='',sAnchorDoingPosition=''
function goSearch(sPageUid){sUrlHash=window.location.hash;if(sUrlHash.indexOf("#")==0){sCut=1;sUrlHash=sUrlHash.substr(sCut)};if(sUrlHash!=''){sUrlHash=urlencode(sUrlHash);window.location.href=sPageUid+'?anchors='+sUrlHash+window.location.hash}}
function urlencode(s){s=encodeURIComponent(s);return s.replace(/~/g,'%7E').replace(/%20/g,'+')}
function urldecode(s){str=s.replace(/%7E/g,'~').replace(/\+/g,'%20');str=decodeURIComponent(str);return str}
function CheckFormParams(){checkParams()}
function getElValue(sElId){var sValue='';if(sElId!=''){oEl=document.getElementById(sElId);if(oEl)sValue=oEl.value};return sValue}
function setSelectDefaultById(sElId){if(sElId!=''){oEl=document.getElementById(sElId);if(oEl)oEl.value=''}}
function clearForm(){var sUrlHash=window.location.hash,i,sCut=0;if(sUrlHash!=''){if(sUrlHash.indexOf("#")==0)sCut=1;sUrlHash=sUrlHash.substr(sCut);if(sUrlHash!=''){$sAjaxUrl=getElValue(URL_PARAMS_HIDDEN_ID).replace("+anchors+",'').replace("anchors_load",'resetall');vUpdateAllContent(getElValue(SITE_URL_HIDDEN_ID),$sAjaxUrl,'reset')}}}
function KindController(sAnchor,oEl){generateSingleParam(sAnchor,oEl);CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID);changeFocus(oEl.value,'resetbutton')}
function DoingControler(sAnhor,oEl){generateSingleParam(sAnhor,oEl);CheckProperties(PROPERTIES_BLOCK_ID);changeFocus(oEl.value,'resetbutton')}
function checkParams(){var sUrlHash=window.location.hash,sSearch=window.location.search,i,sCut=0,$sAnchorProiperties='',sAnchorSubKind='',sAnchorPosition='';if(sUrlHash!=''){if(sUrlHash.indexOf("#")==0)sCut=1;sUrlHash=sUrlHash.substr(sCut);if(sUrlHash!=''){sAnchorKindPosition=sUrlHash.indexOf(KIND_ANCHOR+":");sAnchorDoingPosition=sUrlHash.indexOf(DOING_ANCHOR+":");sAnchorPos="&kindposition="+sAnchorKindPosition+"&doingposition="+sAnchorDoingPosition+"&";if(sAnchorKindPosition==-1&&sAnchorDoingPosition==-1){CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID);return};$sAjaxUrl=getElValue(URL_PARAMS_HIDDEN_ID).replace("+anchors+",urlencode(sUrlHash)+sAnchorPos);vUpdateAllContent(getElValue(SITE_URL_HIDDEN_ID),$sAjaxUrl,'')}else{CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID)}}else if(sUrlHash==''){CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID)};if(sSearch!=''&&sUrlHash==''){sSearch=urldecode(sSearch);$sParamPosition=sSearch.indexOf("anchors=");if($sParamPosition>0){var sExpression="anchors=((\\w)+:(\\d)+,?)+";aAnchorsPart=sSearch;if(aAnchorsPart!=''){var sAnchors=aAnchorsPart.replace("?anchors=","");window.location.hash=sAnchors;checkParams()}}}}
function generateSingleParam(sAnchor,oEl){if(sAnchor!=''&&sAnchor.length>0){var sUrl=window.location.hash,sNewParam='',sReplace='',sExpression='';if(!isNaN(oEl.value))if(sUrl==''||sUrl=='#'){window.location.hash=sAnchor+':'+oEl.value}else{iPos=sUrl.indexOf(sAnchor+":");if(iPos<0){window.location.hash=sUrl+','+sAnchor+':'+oEl.value}else{if(oEl.value!=''){sExpression=sAnchor+":(\\d)+";sNewParam=sAnchor+':'+oEl.value}else if(iPos>1){sExpression=',?'+sAnchor+":(\\d)+"}else if(iPos==1)sExpression=sAnchor+":(\\d)+,?";sReplace=new RegExp(sExpression);window.location.hash=sUrl.replace(sReplace,sNewParam)}}}}
function generateCheckBoxParam(sAnchor,oEl){if(sAnchor!=''&&sAnchor.length>0){var sUrl=window.location.hash,sNewParamStr='',sReplace='',sExpression='',aParams=new Array(),mFound='';if(!isNaN(oEl.value)&&oEl.value>0)if(sUrl==''){window.location.hash=sAnchor+':'+oEl.value}else{iPos=sUrl.indexOf(sAnchor+":");if(iPos<0){window.location.hash=sUrl+','+sAnchor+':'+oEl.value}else if(iPos>1){sExpression=',?'+sAnchor+":((\\d)+(\\.)*)+";sPattern=new RegExp(sExpression);sTempStr=sPattern.exec(sUrl);if(sTempStr[0]){aAnchor=sTempStr[0].split(":");aParams=aAnchor[1].split(".");if(oEl.checked==true){iFound=array_search(oEl.value,aParams);if(iFound==-1)aParams.push(oEl.value);sNewParamStr=aAnchor[0]+':'+aParams.join(".")}else{iFound=array_search(oEl.value,aParams);if(iFound!=-1){iIndex=getArrayIndex(oEl.value,aParams);if(iIndex!=-1)aParams.splice(iIndex,1)};sParamsStr=aParams.join(".");if(sParamsStr!='')sNewParamStr=aAnchor[0]+':'+sParamsStr};sReplace=sTempStr[0];window.location.hash=sUrl.replace(sReplace,sNewParamStr)}}}}}
function array_search(needle,haystack,strict){var strict=!!strict;for(var key in haystack)if((strict&&haystack[key]===needle)||(!strict&&haystack[key]==needle))return key;return -1}
function getArrayIndex(sVal,aArray){var iCount=0,i;if(aArray.length>0&&sVal!='')for(i=0;i<aArray.length;i++){if(sVal==aArray[i])return iCount;iCount++};return -1}
function CheckSubKind(oDivBlock){oKind=document.getElementById(KIND_SEL_ID);oSubKind=document.getElementById(SUBKIND_SEL_ID);oDiv=document.getElementById(oDivBlock);if(oKind){if(oKind.value==''){clearAnchor(SUBKIND_ANCHOR);if(oSubKind)oSubKind.value='';oDiv.style.display="none"}else oDiv.style.display="block"}else{clearAnchor(SUBKIND_ANCHOR);oDiv.style.display="none"}}
function CheckProperties(oDivBlock){oDiv=document.getElementById(oDivBlock);oKind=document.getElementById(KIND_SEL_ID);oDoing=document.getElementById(DOING_SEL_ID);oListDiv=document.getElementById(CHECKBOXLIST_BLOCK_ID);aElList=oListDiv.childNodes;if(oKind&&oDoing)if(oKind.value!=''||oDoing.value!=''){oDiv.style.display="block"}else{for(i=0;i<aElList.length;i++)if(aElList[i].type=="checkbox")aElList[i].checked=false;clearAnchor(PROPERTY_ANCHOR);oDiv.style.display="none"}}
function clearAnchor(sAnchor){if(sAnchor!=''&&sAnchor.length>0){var sUrl=window.location.hash,sReplace='',sExpression='';if(sUrl!=''){iPos=sUrl.indexOf(sAnchor+":");if(iPos>1){if(sAnchor==PROPERTY_ANCHOR){sExpression=',?'+sAnchor+":((\\d)+(\\.)?)+"}else sExpression=',?'+sAnchor+":(\\d)+"}else if(iPos==1)if(sAnchor==PROPERTY_ANCHOR){sExpression=sAnchor+":((\\d)+(\\.)?)+,?"}else sExpression=sAnchor+":(\\d)+,?";sReplace=new RegExp(sExpression);window.location.hash=sUrl.replace(sReplace,'')}}}
function changeFocus(oEl,sFocusId){if(oEl==""){sHash=window.location.hash;if(sHash.length==1||sHash=="#"){Form.Element.focus(sFocusId)}else if(sHash=="")Form.Element.focus(sFocusId)}else if(navigator.appName=="Microsoft Internet Explorer")document.body.focus()};
function vUpdateContent(url,pars,placeHolder){var browser=navigator.appName;if(browser=="Microsoft Internet Explorer"){var oAjax=new Ajax.Request(url,{method:'get',parameters:pars,onCreate:function(){var oDiv=$(placeHolder);oDiv.update(sAjaxBusyIcon)},onLoaded:function(){var oDiv=$(placeHolder);oDiv.update(sAjaxBusyIcon)},onComplete:function(response){var sResult=$(placeHolder);sResult.update(response.responseText)}})}else var oAjax=new Ajax.Request(url,{method:'get',parameters:pars,onLoading:function(){var oDiv=$(placeHolder);oDiv.update(sAjaxBusyIcon)},onComplete:function(response){var sResult=$(placeHolder);sResult.update(response.responseText)}})}
function vUpdateAllContent(url,pars,type){var browser=navigator.appName;if(browser=="Microsoft Internet Explorer"){var oAjax=new Ajax.Request(url,{method:'get',parameters:pars,onCreate:function(){$(KIND_BLOK_ID).update(sAjaxBusyIcon);$(DOING_BLOCK_ID).update(sAjaxBusyIcon);$(SUBKIND_BLOCK_ID).update(sAjaxBusyIcon);$(PROPERTIES_BLOCK_ID).update(sAjaxBusyIcon)},onLoaded:function(){$(KIND_BLOK_ID).update(sAjaxBusyIcon);$(DOING_BLOCK_ID).update(sAjaxBusyIcon);$(SUBKIND_BLOCK_ID).update(sAjaxBusyIcon);$(PROPERTIES_BLOCK_ID).update(sAjaxBusyIcon)},onComplete:function(response){var oJson=response.responseText.evalJSON();if(oJson){$(KIND_BLOK_ID).update(oJson.kind_block);$(DOING_BLOCK_ID).update(oJson.doings_block);$(SUBKIND_BLOCK_ID).update(oJson.subkind_block);$(PROPERTIES_BLOCK_ID).update(oJson.checkboxlist)};CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID);if(type!=''&&type=='reset'){clearAnchor(KIND_ANCHOR);clearAnchor(DOING_ANCHOR);Form.Element.focus('resetbutton')}}})}else var oAjax=new Ajax.Request(url,{method:'get',parameters:pars,onLoading:function(){$(KIND_BLOK_ID).update(sAjaxBusyIcon);$(DOING_BLOCK_ID).update(sAjaxBusyIcon);$(SUBKIND_BLOCK_ID).update(sAjaxBusyIcon);$(PROPERTIES_BLOCK_ID).update(sAjaxBusyIcon)},onComplete:function(response){var oJson=response.responseText.evalJSON();if(oJson){$(KIND_BLOK_ID).update(oJson.kind_block);$(DOING_BLOCK_ID).update(oJson.doings_block);$(SUBKIND_BLOCK_ID).update(oJson.subkind_block);$(PROPERTIES_BLOCK_ID).update(oJson.checkboxlist)};CheckSubKind(SUBKIND_BLOCK_ID);CheckProperties(PROPERTIES_BLOCK_ID);if(type!=''&&type=='reset'){clearAnchor(KIND_ANCHOR);clearAnchor(DOING_ANCHOR);Form.Element.focus('resetbutton')}}})}
function vUpdateDoing(sSite,sUrlParams,sDivBlockId){vUpdateContent(sSite,sUrlParams,sDivBlockId)}
function vUpdateProperties(sSite,sUrlParams,sDivBlockId){vUpdateContent(sSite,sUrlParams,sDivBlockId)};
BigTeaser=Class.create();BigTeaser.prototype={initialize:function(iFePageId,sDestinationElement,sSourceElement){this.iFePageId=iFePageId;this.sDestinationElement=sDestinationElement;this.sSourceElement=sSourceElement;Event.observe(window,"load",this.vSetPreloadImage.bind(this))},vShowImage:function(iUid){$(this.sDestinationElement).className='bigImageBlock '+this.sSourceElement+iUid},vSetPreloadImage:function(){var bFound=false,oImg=$$('.img');for(i=0;i<oImg.length;i++)if($(oImg[i]).className=='img '+this.sSourceElement+this.iFePageId)bFound=true;if(bFound){$(this.sDestinationElement).className='bigImageBlock '+this.sSourceElement+this.iFePageId}else $(this.sDestinationElement).className='bigImageBlock '+$(oImg[0]).className}};
var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-2326029-10']);_gaq.push(['_gat._anonymizeIp']);_gaq.push(['_trackPageLoadTime']);_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';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s)})();
try{documprod_uident.execCommand('BackgroundImageCache',false,true)}catch(e){};

