var TabbedEntityList=Class.create({initialize:function(a){this.element=a;this.cookie=new CtCookie();this.tabs=a.getElementsBySelector("div.tab");this.cookieKey="open_tabs_"+this.element.id;this.tabNum=0;if(this.cookie.get(this.cookieKey)==null){this.activeTab=this.tabs[0]}else{this.activeTab=$(this.cookie.get(this.cookieKey))}this.tabs.each(this.initializeTab.bind(this))},initializeTab:function(a){if(a!=this.activeTab){a.down().next().hide()}a.down().down().observe("click",this.toggleActiveTab.bindAsEventListener(this));this.tabNum++},toggleActiveTab:function(c){c.stop();var e=c.findElement("div");if(this.activeTab!=e){var d=this.activeTab.down().next();var b=e.down().next();try{new Effect.SlideUp(d,{duration:0.2});new Effect.BlindDown(b,{duration:0.2})}catch(a){console.log(a);d.hide();b.show()}this.activeTab=e;this.cookie.set(this.cookieKey,this.activeTab.id)}}});var SuggestionTile=Class.create({initialize:function(a){this.element=$(a);this.form=this.element.select("form").first();this.form.observe("submit",this.formSubmitListener.bindAsEventListener(this))},formSubmitListener:function(a){a.stop();new Ajax.Request(this.form.readAttribute("action"),{parameters:this.form.serialize(),onSuccess:function(b){var c=b.responseText.evalJSON();alert(c.message);if(!c.isError){lightbox.hide()}}.bind(this)})}});var SmallCalendarTile=Class.create({initialize:function(a){this.element=$(a);this.initializeLinks();Event.observe(document,"click",function(b){this.closeAllTooltips()}.bind(this));this.element.observe("smallcalendar:contentChanged",this.contentChangedListener.bindAsEventListener(this))},initializeLinks:function(){this.element.select("a.calendar_popup_link").each(function(a){a.observe("click",function(c){c.stop();var b=c.findElement("a");var d=$(b.id.substring(20));if(d.visible()){return}this.closeAllTooltips();d.setStyle({left:(b.positionedOffset()["left"]-11)+"px",top:(b.positionedOffset()["top"]+18)+"px"});d.show()}.bindAsEventListener(this))}.bind(this))},contentChangedListener:function(a){this.initializeLinks()},closeAllTooltips:function(){$$(".small-calendar-popup").each(function(a){a.hide()})}});var StarRating=Class.create({initialize:function(a){this.container=a;this.numberOfStars=5;this.starBackgroundUrl="/themes/"+getThemeName()+"/images/rating/stars.png";this.starImage=new Image();Event.observe(this.starImage,"load",this.imageLoadListener.bindAsEventListener(this));this.starImage.src=this.starBackgroundUrl},initBoxPosition:function(){var b=this.container.cumulativeOffset();var a=this.container.getDimensions();this.box={left:b.left,top:b.top,right:(b.left+a.width),bottom:(b.top+this.getBackgroundHeight())}},reinitializeElements:function(){this.initStyle();this.initBoxPosition()},getBackgroundWidth:function(){return this.starImage.width},getBackgroundHeight:function(){return this.starImage.height/3},getRatingScale:function(){return this.getBackgroundWidth()/100},getInitialRatingWidth:function(){return this.initialStars*this.getStarWidth()},getStarWidth:function(){return this.getBackgroundWidth()/this.numberOfStars},getStarFromPosition:function(a){var b=a.left-this.box.left;return this.getStarFromWidth(b)},getStarFromWidth:function(a){return Math.ceil(a/this.getStarWidth())},getStarFromRating:function(b){var a=b*this.getRatingScale();return Math.round(a/this.getStarWidth())},getWidthFromStar:function(a){return a*this.getStarWidth()},initStyle:function(){this.container.setStyle({width:this.getBackgroundWidth()+"px",position:"relative",padding:0,margin:0,background:"none"});this.gray.setStyle({position:"absolute",top:"0px",left:"0px",width:this.getBackgroundWidth()+"px",height:this.getBackgroundHeight()+"px",background:"url("+this.starBackgroundUrl+") no-repeat"});this.blue.setStyle({position:"absolute",top:"0px",left:"0px",height:this.getBackgroundHeight()+"px"});this.yellow.setStyle({position:"absolute",top:"0px",left:"0px",height:this.getBackgroundHeight()+"px"})},setInitialStars:function(){this.blue.setStyle({background:"url("+this.starBackgroundUrl+") no-repeat 0 -"+this.getBackgroundHeight()+"px",width:this.getInitialRatingWidth()+"px"});this.yellow.setStyle({background:"url("+this.starBackgroundUrl+") no-repeat 0 -"+this.getBackgroundHeight()*2+"px",width:"0px"});this.label.setStyle({paddingTop:this.getBackgroundHeight()+"px"})},addListeners:function(){Event.observe(this.container,"mousemove",this.mousemoveListener.bindAsEventListener(this));Event.observe(this.container,"click",this.clickListener.bindAsEventListener(this));Event.observe(this.container,"mouseout",this.mouseoutListener.bindAsEventListener(this))},removeListeners:function(){this.container.stopObserving("mousemove");this.container.stopObserving("mouseout");this.container.stopObserving("click")},setRating:function(c){var a=c.responseText.evalJSON();var b=this.getWidthFromStar(this.getStarFromRating(a.avg));try{new Effect.Fade(this.yellow,{duration:0.1,queue:{position:"end",scope:"starrating"}});new Effect.Appear(this.blue,{duration:0.1,queue:{position:"end",scope:"starrating"}});new Effect.Morph(this.blue,{style:"width: "+b+"px",duration:1,queue:{position:"end",scope:"starrating"}});this.updateLabel(a.count)}catch(d){this.yellow.hide();this.blue.show();this.blue.setStyle({width:b+"px"})}this.removeListeners()},updateLabel:function(b){var a=this.labelText.replace(/\{0\}/,b);this.label.update(a)},handleRatingError:function(a){this.removeListeners();this.cancelEffects();try{new Effect.Fade(this.yellow,{duration:0.2,queue:{position:"end",scope:"starrating"}});new Effect.Appear(this.blue,{duration:0.2,queue:{position:"end",scope:"starrating"}})}catch(b){this.yellow.hide();this.blue.show()}},animate:function(){this.cancelEffects();this.yellow.show();this.yellow.setOpacity(1);if(this.blue.visible()){this.blue.hide()}try{this.mousemoveEffect=new Effect.Morph(this.yellow,{style:"width: "+(this.getStarWidth()*this.hoverStar)+"px",duration:0.1,queue:{position:"end",scope:"starrating"}})}catch(a){this.yellow.setStyle({width:(this.getStarWidth()*this.hoverStar)+"px"})}},pointerInsideBox:function(a){return !(a.pointerX()<=this.box.left||a.pointerY()<=this.box.top||a.pointerX()>=this.box.right||a.pointerY()>=this.box.bottom)},mousemoveListener:function(a){if(this.pointerInsideBox(a)){var c=a.pointerX()-a.element().positionedOffset()["left"];var b=this.getStarFromPosition({left:a.pointerX()});if(this.hoverStar!=b){this.hoverStar=b;if(typeof this.timeout!="undefined"){clearTimeout(this.timeout)}this.animate()}}},mouseoutListener:function(b){if(!this.pointerInsideBox(b)){try{this.cancelEffects();new Effect.Fade(this.yellow,{duration:0.3,queue:{position:"end",scope:"starrating"}});new Effect.Appear(this.blue,{duration:0.3,queue:{position:"end",scope:"starrating"}})}catch(a){this.yellow.setStyle({width:"0px"});this.blue.show()}this.hoverStar=null}},cancelEffects:function(){clearTimeout(this.timeout);try{var a=Effect.Queues.get("starrating");a.each(function(c){c.cancel()})}catch(b){}},clickListener:function(b){var a;switch(this.getStarFromPosition({left:b.pointerX()})){case 1:a=0;break;case 2:a=25;break;case 3:a=50;break;case 4:a=75;break;case 5:a=100;break;default:return;break}this.params.set("rating",a);new Ajax.Request(this.form.getAttribute("action"),{parameters:this.params,onSuccess:this.setRating.bindAsEventListener(this),onFailure:this.handleRatingError.bindAsEventListener(this)})},imageLoadListener:function(a){this.form=this.container.getElementsBySelector("form").first();this.params=new Hash(this.form.serialize(true));this.initialStars=this.container.getElementsBySelector('input[name="initial_stars"]')[0].value;this.initialRatingCount=this.container.getElementsBySelector('input[name="rating_count"]')[0].value;this.labelText=this.container.getElementsBySelector('input[name="rating_count_label"]')[0].value;this.gray=$(this.container.update('<div></div><div></div><div></div><div class="rating-label"></div>').firstChild);this.yellow=this.gray.next();this.blue=this.yellow.next();this.label=this.blue.next();this.updateLabel(this.initialRatingCount);this.initStyle();this.setInitialStars();this.addListeners();this.initBoxPosition()}});var RecommendRating=Class.create({initialize:function(a){this.form=$(a.down());this.text=this.form.next();this.initStyle();this.form.observe("submit",this.submitListener.bindAsEventListener(this))},initStyle:function(){this.img=new Image();Event.observe(this.img,"load",this.imageLoadListener.bindAsEventListener(this));this.img.src="/themes/"+getThemeName()+"/images/rating/recommended.png";this.gray=new Image();this.gray.src="/themes/"+getThemeName()+"/images/rating/recommended_gray.png"},updateRecommendationCount:function(b){var a=b.responseText.evalJSON();this.text.down().update(a.amount_with_rating);this.submit.setStyle({background:"url("+this.gray.src+") no-repeat"});this.removeListeners()},removeListeners:function(){this.form.stopObserving("submit");this.form.observe("submit",function(a){a.stop()})},imageLoadListener:function(a){this.submit=this.form.getElementsBySelector("input[type=submit]")[0];this.submit.value="";this.submit.setStyle({background:"url("+this.img.src+") no-repeat",border:"0px",width:this.img.width+"px",height:this.img.height+"px"})},submitListener:function(a){a.stop();new Ajax.Request(this.form.getAttribute("action"),{parameters:this.form.serialize(),onSuccess:this.updateRecommendationCount.bindAsEventListener(this)})}});var AgreeDisagreeRating=Class.create({initialize:function(a){this.form=a.down();this.text=this.form.next();this.initStyle();this.agree.observe("click",this.submitListener.bindAsEventListener(this));this.disagree.observe("click",this.submitListener.bindAsEventListener(this))},initStyle:function(){var a=this.form.getElementsBySelector("button");this.upIconPath="/themes/"+getThemeName()+"/images/rating/thumb_up.png";this.downIconPath="/themes/"+getThemeName()+"/images/rating/thumb_down.png";this.upIconGrayPath="/themes/"+getThemeName()+"/images/rating/thumb_up_gray.png";this.downIconGrayPath="/themes/"+getThemeName()+"/images/rating/thumb_down_gray.png";this.agree=this.transformButton(a[0],this.upIconPath);this.disagree=this.transformButton(a[1],this.downIconPath)},transformButton:function(c,a){var b=new Image();b.src=a;Event.observe(b,"load",function(d){c.update();c.setStyle({background:"url("+a+") no-repeat",border:"0",width:b.width+"px",height:b.height+"px"})});return c},updateRatingCount:function(b){var a=b.responseText.evalJSON();this.eventTrigger.next().down().update(a.amount_with_rating);this.agree.stopObserving("click");this.disagree.stopObserving("click");this.form.observe("submit",function(c){c.stop()});this.agree.setStyle({background:"url("+this.upIconGrayPath+")"});this.disagree.setStyle({background:"url("+this.downIconGrayPath+")"});new Effect.Shake(this.submit,{distance:100})},submitListener:function(a){a.stop();params=this.form.serialize(true);params.rating=a.element().value;this.eventTrigger=a.element();new Ajax.Request(this.form.getAttribute("action"),{parameters:params,onSuccess:this.updateRatingCount.bindAsEventListener(this),onFailure:function(b){}})}});var OffensiveRatingForm=Class.create({initialize:function(b){this.element=b;var c=b.down();var a=b.getElementsBySelector("button")[0];this.parameters=c.serialize();this.serviceUrl=c.readAttribute("action");this.tagOffensiveConfirmText=c.getElementsBySelector("input[name=tag_offensive_confirm]")[0].value;this.taggedOffensiveText=c.getElementsBySelector("input[name=tagged_offensive]")[0].value;this.link=b.update('<a href="#offensive">'+a.firstChild.nodeValue+"</a>").down();this.link.observe("click",this.submitListener.bindAsEventListener(this))},submitListener:function(a){a.stop();if(confirm(this.tagOffensiveConfirmText)){new Ajax.Request(this.serviceUrl,{parameters:this.parameters,onSuccess:this.successListener.bindAsEventListener(this)})}},successListener:function(c){var a=this.element.update("<span>("+this.taggedOffensiveText+")</span>").down();try{new Effect.Highlight(a)}catch(b){}}});var CtFontSize=Class.create({initialize:function(){this.c=new CtCookie()},getAvailableFontSizes:function(){return getSiteComponentsConfig("fontsize","sizes",["10pt","12pt","14pt"])},toggle:function(){var a=this.getCurrentIndex();var c=this.getAvailableFontSizes();var b=null;if(a+1>=c.size()){b=c[0]}else{if(a<0){b=c[0]}else{b=c[a+1]}}this.set(b)},getCurrentIndex:function(){var b=this.getAvailableFontSizes();var a=this.c.get("fontsize");return b.indexOf(a)},set:function(a){this.c.set("fontsize",a);$(document.body).setStyle({fontSize:a})},setByIndex:function(a){var b=this.getAvailableFontSizes();if(a>=0&&a<b.size()){this.set(b[a])}},initializeFromCookie:function(){var a=this.getCurrentIndex();var b=this.getAvailableFontSizes();if(a<0){this.set(b[0])}else{this.set(b[a])}}});function Fader(b,a,c){this._object=document.getElementById(b);if(this._object==null){return}if(a==null||a<=0||a>10000){alert("Illegal interval  [+0 - 10000].");return}if(c==null||c<1||c>990){alert("Illegal fadeStepPercent [1 - 99]%");return}this._toObject=null;this._startOpacity=100;this._endOpacity=0;this._fadeOut=true;this._currentOpacity=null;this._intervalId=null;this._interval=a;this._speed=c/100;this._doFade=null;this.setDoFadeFunction()}Fader.prototype.fadeTo=function(b){this._toObject=document.getElementById(b);if(this._object==null||this._toObject==null){return}this._fadeOut=true;var a=this;this._intervalId=setInterval(function(){a.doFadeTick()},this._interval)};Fader.prototype.fadeOut=function(){this._fadeOut=true;var a=this;this._intervalId=setInterval(function(){a.doFadeTick()},this._interval)};Fader.prototype.fadeIn=function(){this._fadeOut=false;var a=this;this._intervalId=setInterval(function(){a.doFadeTick()},this._interval)};Fader.prototype.setDoFadeFunction=function(){switch(navigator.appName){case"Opera":case"Netscape":this._currentOpacity=1;this._object.style.filter=this._currentOpacity;this._doSetOpacity=this.setOpacityMoz;break;default:this._currentOpacity=1;this._object.style.filter=this._currentOpacity;this._object.style.filter="alpha(Opacity="+(this._currentOpacity*100)+")";this._doSetOpacity=this.setOpacityMSIE;break}};Fader.prototype.doFadeTick=function(){if(this._fadeOut){if(this._currentOpacity>0){opacity=(Number(this._currentOpacity)-this._speed)*100;opacity=Math.round(opacity)/100;this._doSetOpacity(this._object,opacity)}else{if(this._toObject!=null){this._object.innerHTML=this._toObject.innerHTML;this._fadeOut=false}else{clearInterval(this._intervalId)}}}else{if(this._currentOpacity<1){opacity=(Number(this._currentOpacity)+this._speed)*100;opacity=Math.round(opacity)/100;this._doSetOpacity(this._object,opacity)}else{clearInterval(this._intervalId)}}};Fader.prototype.setOpacityMSIE=function(b,a){b.filters.alpha.opacity=(a*100);this._currentOpacity=a};Fader.prototype.setOpacityMoz=function(b,a){b.style.opacity=a;this._currentOpacity=a};var CtTooltip=Class.create({initialize:function(b){switch(b){case"element":b="element";break;case"mouse":default:b="mouse";break}this.positionBy=b;objBody=document.getElementsByTagName("body").item(0);var c=document.createElement("div");c.setAttribute("id","tooltip");c.style.display="none";c.style.position="absolute";c.style.zIndex="100";objBody.appendChild(c);var a=document.createElement("div");a.setAttribute("id","tooltip-top");c.appendChild(a);var d=document.createElement("div");d.setAttribute("id","tooltip-content");c.appendChild(d);$$("a").each(function(f){try{title=f.getAttribute("title");if(title!=null&&title.length>0){f.observe("mouseover",function(g){tooltip.show(f,g)});f.observe("mouseout",function(g){tooltip.hide()});if(b=="mouse"){f.observe("mousemove",function(g){tooltip.moveTo(g.pointerX(),g.pointerY())})}}}catch(e){}});if(Prototype.Browser.IE&&navigator.appVersion.match(/MSIE 6\.0/)){$("tooltip").setStyle({position:"absolute",width:"50px",whiteSpace:"nowrap"})}},show:function(b,c){try{if(b.getAttribute("title").length>0){if(this.visible){this.hide()}this.element=b;this.tooltipText=b.getAttribute("title");b.setAttribute("title","");switch(this.positionBy){case"element":this.moveTo(b.cumulativeOffset()[0],b.cumulativeOffset()[1]);break;case"mouse":default:this.moveTo(c.pointerX(),c.pointerY());break}$("tooltip-content").update(this.tooltipText);try{this.effect=Effect.Appear("tooltip",{duration:0.25,afterFinish:function(){tooltip.effect=null}})}catch(d){$("tooltip").show()}this.visible=true}}catch(a){}},hide:function(){if(this.visible){if(this.effect!=null){this.effect.cancel();this.effect=null}$("tooltip").hide();this.element.setAttribute("title",this.tooltipText);this.tooltipText=null;this.visible=false}},moveTo:function(a,b){a-=10;width=$("tooltip").getWidth();scrollOffsets=document.viewport.getScrollOffsets();if(a+width>=document.viewport.getWidth()+scrollOffsets.left-20){newX=document.viewport.getWidth()+scrollOffsets.left-width-20;topOffset=a-newX;a=newX;$("tooltip-top").setStyle({marginLeft:topOffset+"px"})}else{$("tooltip-top").setStyle({marginLeft:"0px"})}$("tooltip").style.left=a+"px";$("tooltip").style.top=(b+20)+"px"}});var tooltip;document.observe("dom:loaded",function(a){tooltip=new CtTooltip(getSiteComponentsConfig("tooltip","positionby","element"))});var Keywords=Class.create({initialize:function(){this.html="";this.replacements={};this.replacementsMacroCounter=0;this.regExpEscapeChars=["/",".","*","+","?","|","(",")","[","]","{","}","\\"];this.defaultSkipTags=["a","textarea","label","legend","option","title","script","style"]},replaceKeywordsInHtml:function(c,a){if(typeof cpKeywords!="undefined"&&cpKeywords instanceof Object){this.html=c.innerHTML;if(a instanceof Array){for(var b=0;b<a.length;b++){this._replaceStringsWithMacrosByPattern(new RegExp("<"+this._escapeRegExpString(a[b])+".*\\/"+this._escapeRegExpString(a[b])+">","ig"))}}this._replaceStringsWithMacrosByPattern(new RegExp("<[^>]*>","g"));for(var b in cpKeywords){switch(cpKeywords[b]["type"]){case"list":case"link":this._replaceStringsWithMacrosByPattern(new RegExp("\\b"+b+"\\b","ig"),true,'<a class="keyword-replacement keyword-replacement-'+cpKeywords[b]["type"]+" keyword-replacement-"+b.toLowerCase().replace(/[^A-Za-z0-9]/ig,"")+'" href="'+cpKeywords[b]["link"]+'" target="'+cpKeywords[b]["target"]+'" title="'+cpKeywords[b]["explanation"]+'">',"</a>");break;case"title":this._replaceStringsWithMacrosByPattern(new RegExp("\\b"+b+"\\b","ig"),true,'<a class="keyword-replacement keyword-replacement-'+cpKeywords[b]["type"]+" keyword-replacement-"+b.toLowerCase().replace(/[^A-Za-z0-9]/ig,"")+'" href="'+cpKeywords[b]["link"]+'" title="'+cpKeywords[b]["explanation"]+'" onclick="return false;">',"</a>");break}}var d;for(var b in this.replacements){this.html=this.html.replace(new RegExp(b,"g"),this.replacements[b])}c.innerHTML=this.html}},_replaceStringsWithMacrosByPattern:function(e,a,f,g){f=f===undefined?"":f;g=g===undefined?"":g;var d=this.html.match(e);if(d instanceof Array){for(var b=0;b<d.length;b++){var c="::"+this.replacementsMacroCounter+++"::";this.replacements[c]=f+d[b]+g;if(a===true){this.html=this.html.replace(new RegExp("\\b"+this._escapeRegExpString(d[b])+"\\b","ig"),c)}else{this.html=this.html.replace(new RegExp(this._escapeRegExpString(d[b]),"ig"),c)}}}},_escapeRegExpString:function(a){return a.replace(new RegExp("(\\"+this.regExpEscapeChars.join("|\\")+")","g"),"\\$1")}});document.observe("dom:loaded",function(c){var d=getSiteComponentsConfig("keywords","elements",[]);if(d.length>0){var b=new Keywords();for(var a=0;a<d.length;a++){b.replaceKeywordsInHtml($(d[a]),getSiteComponentsConfig("keywords","skiptags",[]))}if(getSiteComponentsConfig("keywords","usetooltip",true)&&typeof CtTooltip=="function"){new CtTooltip(getSiteComponentsConfig("tooltip","positionby","element"))}}});Ajax.Responders.register({onCreate:function(a){a.timeoutId=window.setTimeout(function(){switch(a.transport.readyState){case 0:case 1:case 2:case 3:a.transport.abort();if(a.options.onFailure){a.options.onFailure(a.transport,a.json)}break}},5000)},onComplete:function(a){window.clearTimeout(a.timeoutId)}});function hoverLayer(a,b){if(typeof $(a)!="undefined"){hover=$(a);hover.style.position="absolute";hover.setStyle({left:b.positionedOffset()["left"]-2+"px",top:b.positionedOffset()["top"]-4+"px",zIndex:"10"});hover.style.display="block"}}function hideLayer(a){if(typeof $(a)!="undefined"){$(a).style.display="none"}}var hideAllHovermenuItems=function(a){$$("*.hovermenuitem").each(function(b){b.hide()})};function getMousePosition(a){var b;if(!a){var a=window.event}if(a.pageX||a.pageY){posx=a.pageX;posy=a.pageY}else{if(a.clientX||a.clientY){posx=a.clientX+document.body.scrollLeft+document.documentElement.scrollLeft;posy=a.clientY+document.body.scrollTop+document.documentElement.scrollTop}}return{x:posx,y:posy}}function popupLayerEvent(e,b,c){if($(b)!=null){pos=getMousePosition(e);if(typeof c=="undefined"){var c=new Object()}var f=18;var a=14;if(typeof c.x!="undefined"){a=c.x}if(typeof c.y!="undefined"){f=c.y}var d=$(b);d.style.display="block";d.style.position="absolute";if(typeof c.fixedPosition=="undefined"||c.fixedPosition==false){d.style.left=pos.x+a+"px";d.style.top=pos.y+f+"px"}}}function getSiteComponentsConfig(b,c,a){if(typeof siteComponentsConfig!="undefined"&&typeof siteComponentsConfig[b]!="undefined"&&siteComponentsConfig[b][c]!="undefined"){return siteComponentsConfig[b][c]}if(typeof a!="undefined"){return a}return null}function initCalendarPopupLinks(){var a=function(b){b.stop();var c=b.findElement("a").id.substring(26);$(c).hide()};$$("a.calendar_popup_link").each(function(b){b.observe("click",function(d){d.stop();var c=d.findElement("a");var e=c.id.substring(20);c.observe("click",a);$(e).setStyle({left:c.positionedOffset()["left"]-11+"px",top:(c.positionedOffset()["top"]+18)+"px"});$(e).show()})});$$("a.window-close-button").each(function(b){b.observe("click",a)})}function recommendCommentPost(a){new Ajax.Updater({success:"commentpost-rating-"+a},"/xmlhttprequest.php?service=entity.rate",{parameters:{entity_id:a,entity_type:"EntityCommentPost",rating:"99"}});return false}function getThemeName(){if(typeof themeName=="undefined"){var b=$$("link[rel=stylesheet]");if(b.size()>0){var a=b[0].readAttribute("href");a=a.substring(0,a.lastIndexOf("/"));themeName=a.substring(a.lastIndexOf("/")+1)}}return themeName}function articleOpinion(b,a){new Ajax.Updater({success:"article-opinion-"+b+"-"+(a?"agree":"disagree")},"/xmlhttprequest.php?service=entity.rate",{parameters:{entity_id:b,entity_type:"Article",rating:a?99:1}});return false}var Lightbox=Class.create({showHtml:function(a){this.showLoadingState();this.content.update(a);this.doShow()},show:function(a){lightbox.getAndShowContentFromUrl(a)},hide:function(){lightbox.historyPolling.stop();if(this.isIE6()){window.scrollTo(this.scolloffset[0],this.scolloffset[1])}document.getElementsByTagName("html").item(0).style.overflow="auto";this.lightbox.hide();this.content.hide();this.overlay.hide();this.showPersistentObjects(true);this.content.update(" ");if(window.location.hash=="#modal"){history.back(1)}},load:function(){$$("a.lightbox").each(function(a){a.observe("click",function(c){c.stop();var b=Event.findElement(c,"a");if(b!=document){lightbox.show(b.getAttribute("href"))}})})},isVisible:function(){return $("lightbox").visible},initialize:function(){this.history=new Object();var m=document.getElementsByTagName("body").item(0);if(Prototype.Browser.IE){var j=document.createElement("iframe");j.setAttribute("id","lightbox-history-frame");j.style.display="block";j.style.visibility="hidden";j.src="/history-frame.php";j.style.position="absolute";j.style.top="0";j.style.left="0";j.style.width="1px";j.style.height="1px";m.appendChild(j);this.historyFrame=j}var b=document.createElement("div");b.setAttribute("id","lightbox");b.style.display="none";m.appendChild(b);var k=document.createElement("div");k.setAttribute("id","lightbox-overlay");k.style.display="none";b.appendChild(k);var e=document.createElement("div");e.setAttribute("id","lightbox-container");b.appendChild(e);var l=document.createElement("div");l.setAttribute("id","lightbox-close-container");e.appendChild(l);var i=document.createElement("a");i.setAttribute("id","lightbox-close");i.setAttribute("href","#");var h=document.createElement("span");i.appendChild(h);var f=document.createTextNode("Close");h.appendChild(f);l.appendChild(i);var g=document.createElement("div");g.setAttribute("id","lightbox-start");e.appendChild(g);var d=document.createElement("div");d.setAttribute("id","lightbox-spinner");e.appendChild(d);var a=document.createElement("div");a.setAttribute("id","lightbox-content");a.style.display="none";e.appendChild(a);var c=document.createElement("div");c.setAttribute("id","lightbox-end");e.appendChild(c);b.appendChild(e);this.content=$("lightbox-content");this.lightbox=$("lightbox");this.overlay=$("lightbox-overlay");this.close=$("lightbox-close");this.close.observe("click",function(n){n.stop();lightbox.hide()});this.overlay.observe("click",function(n){n.stop();lightbox.hide()});if(Prototype.Browser.Gecko){this.overlay.setStyle({background:"url(/images/lightbox/ff-overlay-img.png)"})}else{this.overlay.setStyle({opacity:0.8})}},prepareHistory:function(){if(Prototype.Browser.IE){lightbox.historyFrame.src="/history-frame.php?modal"}else{window.location.hash="#modal"}lightbox.historyPolling=new PeriodicalExecuter(function(a){var d=false;if(Prototype.Browser.IE){var b=lightbox.historyFrame.contentWindow.document.title;if(b.indexOf("?modal")<0){d=true}}else{var c=window.location.hash;if(window.location.hash!="#modal"){d=true}}if(d){a.stop();if(lightbox.isVisible()){lightbox.hide()}}},1)},isIE6:function(){if(Prototype.Browser.IE&&navigator.appVersion.match(/MSIE 6\.0/)){return true}else{return false}},showPersistentObjects:function(a){$$("select","embed","object").each(function(b){if(a){b.style.visibility="visible"}else{b.style.visibility="hidden"}})},showLoadingState:function(){this.prepareHistory();this.showPersistentObjects(false);$("lightbox-spinner").show();$("lightbox-overlay").show();$("lightbox").show();this.scolloffset=document.viewport.getScrollOffsets();document.getElementsByTagName("html").item(0).style.overflow="hidden";if(Prototype.Browser.IE&&navigator.appVersion.match(/MSIE 6\.0/)){window.scrollTo(0,0)}this.loadingStarted=true},doShow:function(){if(!this.loadingStarted){this.showLoadingState()}$("lightbox-spinner").hide();$("lightbox-content").show()},getAndShowContentFromUrl:function(a){if(a==null){alert("No URL provided");return}this.showLoadingState();new Ajax.Request(a,{method:"get",onSuccess:function(b){$("lightbox-content").update(b.responseText);this.doShow()}.bind(this),onFailure:function(b){this.hide();alert("Could not connect to URL")}.bind(this)})}});var CtCookie=Class.create({set:function(d,e,b){if(b){var c=new Date();c.setTime(c.getTime()+(b*24*60*60*1000));var a="; expires="+c.toGMTString()}else{a=""}document.cookie=d+"="+e+a+"; path=/"},get:function(a){nameRe=new RegExp("^\\s?"+a+"=.*");var b=document.cookie.split(";").grep(nameRe).collect(function(c){return c.strip()});if(b.size()>0){return b.first().substring(a.length+1)}else{return null}},clear:function(a){var b=new Date();b.setTime(b.getTime()-1);document.cookie=a+"=; expires="+b.toGMTString()}});var Slideshow=Class.create({initialize:function(a){this.element=a;this.tileId=a.id.substring(5);this.current=0;this.images=a.getElementsBySelector("div.slideshow-image");this.navigation=this.element.down().next(1).down();if(this.navigation.hasClassName("slideshow-navigation")){this.thumbnailContainer=this.element.down().next(2);this.thumbnails=this.thumbnailContainer.childElements();this.navigation.show();this.setActiveThumb(this.images[this.current])}else{this.navigation=null}this.addListeners()},addListeners:function(){this.images.each(function(a){a.down("img").observe("click",this.nextListener.bindAsEventListener(this))}.bind(this));if(this.navigation!=null){this.element.getElementsBySelector("a.slideshow-previous").first().observe("click",this.previousListener.bindAsEventListener(this));this.element.getElementsBySelector("a.slideshow-next").first().observe("click",this.nextListener.bindAsEventListener(this));this.thumbnailContainer.show();this.thumbnailContainer.getElementsBySelector("a").each(function(a){a.observe("click",this.thumbnailListener.bindAsEventListener(this))}.bind(this))}else{this.interval=this.element.getElementsBySelector("div.slideshow-interval").first().textContent;new PeriodicalExecuter(this.periodicalExecutor.bind(this),this.interval)}},previous:function(){previous=this.current;this.current--;if(this.current<0){this.current=this.images.size()-1}this.fadeFromTo(this.images[previous],this.images[this.current])},next:function(){previous=this.current;this.current++;if(this.current>=this.images.size()){this.current=0}this.fadeFromTo(this.images[previous],this.images[this.current])},showElementId:function(a){var b=0;this.images.each(function(e){if(e.id==a){throw $break}b++});var d=this.current;this.current=b;try{this.fadeFromTo(this.images[d],this.images[this.current])}catch(c){}},setActiveThumb:function(b){if(typeof this.thumbnails=="undefined"){return}var a=b.id.substring(b.id.lastIndexOf("-")+1);this.thumbnails.each(function(e){var d=e.down().readAttribute("href");var c=d.substring(d.lastIndexOf("#show_image_")+12);if(e.hasClassName("active")){e.removeClassName("active")}else{if(a==c){e.addClassName("active")}}}.bind(this))},fadeFromTo:function(c,b){this.setActiveThumb(b);try{Effect.Appear(b,{duration:0.5,afterUpdate:function(d){if(d.currentFrame==0){c.hide()}},afterFinish:function(e){c.removeClassName("active");try{var d=b.getElementsBySelector("div.rating-container");if(d.size()>0){d.each(function(g){if(typeof g.rating=="object"){g.rating.reinitializeElements()}})}}catch(f){}}})}catch(a){c.hide();b.show()}},nextListener:function(a){a.stop();this.next()},previousListener:function(a){a.stop();this.previous()},thumbnailListener:function(c){c.stop();var a=c.findElement("a").readAttribute("href");var b="image-"+this.tileId+"-"+a.substring(a.lastIndexOf("#show_image")+12);this.showElementId(b)},periodicalExecutor:function(a){this.next()}});