myDeco.auth={init:function(){this.activateAuthBlocks();this.checkAuth()},isCurrentUser:function(){return !Object.isUndefined(myDeco.username)&&!Object.isUndefined(myDeco.ownername)&&myDeco.username==myDeco.ownername},activateAuthBlocks:function(){if(this.isCurrentUser()){$$(".authorized").invoke("show")}else{$$(".unauthorized").invoke("show")}},checkAuth:function(){var c=$$(".logout-info"),a=$$(".login-info"),b=$$(".user-rating-form fieldset:first");if(myDeco.username){a.invoke("show");if(b.length==0){return}b._each(function(d){var f=d.down("textarea");if(f.getValue()){d.down(".login-info").hide()}d.observe("click",function(g){d.down(".login-info").hide();f.focus()})})}else{redirect_to_login=function(d){d.stop();document.location=document.body.down(".review-login-link").href};$$(".user-rating-form").invoke("observe","sumbit",redirect_to_login);c.invoke("show")}}};addLoadEvent(myDeco.auth.init.bind(myDeco.auth));if(typeof Effect=="undefined"){throw ("lightwindow.js requires including script.aculo.us' effects.js library!")}try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}var lightwindow=Class.create();lightwindow.prototype={element:null,contentToFetch:null,windowActive:false,dataEffects:[],dimensions:{cruft:null,container:null,viewport:{height:null,width:null,offsetTop:null,offsetLeft:null}},pagePosition:{x:0,y:0},pageDimensions:{width:null,height:null},preloadImage:[],preloadedImage:[],resizeTo:{height:null,heightPercent:null,width:null,widthPercent:null,fixedTop:null,fixedLeft:null},scrollbarOffset:20,initialize:function(a){this.options=Object.extend({resizeSpeed:9,dimensions:{image:{height:250,width:250},page:{height:250,width:250},inline:{height:50,width:50},media:{height:250,width:250},external:{height:250,width:250},titleHeight:34},classNames:{standard:"lightwindow",action:"lightwindow_action"},fileTypes:{page:["asp","aspx","cgi","cfm","htm","html","pl","php4","php3","php","php5","phtml","rhtml","shtml","txt","vbs","rb"],media:["aif","aiff","asf","avi","divx","m1v","m2a","m2v","m3u","mid","midi","mov","moov","movie","mp2","mp3","mpa","mpa","mpe","mpeg","mpg","mpg","mpga","pps","qt","rm","ram","swf","viv","vivo","wav"],image:["bmp","gif","jpg","png","tiff"]},mimeTypes:{avi:"video/avi",aif:"audio/aiff",aiff:"audio/aiff",gif:"image/gif",bmp:"image/bmp",jpeg:"image/jpeg",m1v:"video/mpeg",m2a:"audio/mpeg",m2v:"video/mpeg",m3u:"audio/x-mpequrl",mid:"audio/x-midi",midi:"audio/x-midi",mjpg:"video/x-motion-jpeg",moov:"video/quicktime",mov:"video/quicktime",movie:"video/x-sgi-movie",mp2:"audio/mpeg",mp3:"audio/mpeg3",mpa:"audio/mpeg",mpa:"video/mpeg",mpe:"video/mpeg",mpeg:"video/mpeg",mpg:"audio/mpeg",mpg:"video/mpeg",mpga:"audio/mpeg",pdf:"application/pdf",png:"image/png",pps:"application/mspowerpoint",qt:"video/quicktime",ram:"audio/x-pn-realaudio-plugin",rm:"application/vnd.rn-realmedia",swf:"application/x-shockwave-flash",tiff:"image/tiff",viv:"video/vivo",vivo:"video/vivo",wav:"audio/wav",wmv:"application/x-mplayer2"},classids:{mov:"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B",swf:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",wmv:"clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6"},codebases:{mov:"http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0",swf:"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0",wmv:"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715"},viewportPadding:10,EOLASFix:"swf,wmv,fla,flv",overlay:{opacity:0.7,image:myDeco.settings.STATIC_URL+"img/lightwindow-white.gif",presetImage:myDeco.settings.STATIC_URL+"img/lightwindow-white-70.png"},skin:{main:'<div id="lightwindow_container" ><div id="lightwindow_title_bar" ><div id="lightwindow_title_bar_inner" ><a id="lightwindow_title_bar_close_link" ></a><span id="lightwindow_title_bar_title"></span></div></div><div id="lightwindow_stage" ><div id="lightwindow_contents" ></div></div></div>',loading:'<div id="lightwindow_loading" style="width:200px"></div>',iframe:'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><body>{body_replace}</body></html>'},formMethod:"get",hideFlash:false,showTitleBar:true,animationHandler:false,transitionHandler:false,finalAnimationHandler:false,formHandler:false},a||{});this.duration=((11-this.options.resizeSpeed)*0.15);this._setupLinks();this._getScroll();this._getPageDimensions();this._browserDimensions();this._addLightWindowMarkup(false);this._setupDimensions()},activate:function(b,a){this._clearWindowContents(true);this._addLoadingWindowMarkup();this._setupWindowElements(a);this._getScroll();this._browserDimensions();this._setupDimensions();this._toggleTroubleElements("hidden",false);this._displayLightWindow("block","hidden");this._setStatus(true);this._monitorKeyboard(true);this._loadWindow()},deactivate:function(){this.windowActive=false;this.animating=false;this.element=null;this._displayLightWindow("none","visible");this._clearWindowContents(false);var a=Effect.Queues.get("lightwindowAnimation").each(function(b){b.cancel()});this._setupDimensions();this._toggleTroubleElements("visible",false);this._monitorKeyboard(false)},createWindow:function(b,a){this._processLink($(b))},activateWindow:function(a){this.element=Object.extend({href:null,title:null,caption:null,rel:null,top:null,left:null,type:null,showImages:null,height:null,width:null,loadingAnimation:null,iframeEmbed:null,form:null,fixedWindow:true,overlayId:""},a||{});if(this.element.type!=null){var b=this.options.dimensions[this.element.type];this.options.dimensions[this.element.type]={width:this.element.width||b.width,height:this.element.height||b.height}}this.contentToFetch=this.element.href;this.windowType=this.element.type?this.element.type:this._fileType(this.element.href);this._clearWindowContents(true);this._addLoadingWindowMarkup();this._getScroll();this._browserDimensions();this._setupDimensions();this._toggleTroubleElements("hidden",false);this._displayLightWindow("block","hidden");this._setStatus(true);this._monitorKeyboard(true);this._loadWindow()},submitForm:function(a){if(this.options.formHandler){this.options.formHandler(a)}else{this._defaultFormHandler(a)}},openWindow:function(a){var a=$(a);this.windowActive=true;this._clearWindowContents(true);this._addLoadingWindowMarkup();this._setupWindowElements(a);this._setStatus(true);this._handleTransition()},_setupLinks:function(){var a=$$("."+this.options.classNames.standard);a.each(function(b){this._processLink(b)}.bind(this))},_processLink:function(c){var b=c.getAttribute("href");if(b.indexOf("?")>-1){b=b.substring(0,b.indexOf("?"))}var a=b.substring(b.indexOf("#")+1);if($(a)){$(a).setStyle({display:"none"})}Event.observe(c,"click",this.activate.bindAsEventListener(this,c),false);c.onclick=function(){return false}},_setupActions:function(){var a=$$("#lightwindow_container ."+this.options.classNames.action);a.each(function(b){Event.observe(b,"click",this[b.getAttribute("rel")].bindAsEventListener(this,b),false);b.onclick=function(){return false}}.bind(this))},_addLightWindowMarkup:function(b){var c=Element.extend(document.createElement("div"));c.setAttribute("id","lightwindow_overlay");if(Prototype.Browser.Gecko){c.setStyle({backgroundImage:"url("+this.options.overlay.presetImage+")",backgroundRepeat:"repeat",height:this.pageDimensions.height+"px"})}else{c.setStyle({opacity:this.options.overlay.opacity,backgroundImage:"url("+this.options.overlay.image+")",backgroundRepeat:"repeat",height:this.pageDimensions.height+"px"})}var d=document.createElement("div");d.setAttribute("id","lightwindow");d.innerHTML=this.options.skin.main;var a=document.getElementsByTagName("body")[0];a.appendChild(c);a.appendChild(d);if($("lightwindow_title_bar_close_link")){Event.observe("lightwindow_title_bar_close_link","click",this.deactivate.bindAsEventListener(this));$("lightwindow_title_bar_close_link").onclick=function(){return false}}if(Prototype.Browser.IE){Event.observe(document,"mousewheel",this._stopScrolling.bindAsEventListener(this),false)}else{Event.observe(window,"DOMMouseScroll",this._stopScrolling.bindAsEventListener(this),false)}Event.observe(c,"click",this.deactivate.bindAsEventListener(this),false);c.onclick=function(){return false}},_addLoadingWindowMarkup:function(){$("lightwindow_contents").innerHTML+=this.options.skin.loading},_setupWindowElements:function(a){this.element=a;this.element.title=null?"":a.getAttribute("title");this.element.caption=null?"":a.getAttribute("caption");this.element.rel=null?"":a.getAttribute("rel");this.element.params=null?"":a.getAttribute("params");this.contentToFetch=this.element.href;this.windowType=this._getParameter("lightwindow_type")?this._getParameter("lightwindow_type"):this._fileType(this.contentToFetch)},_clearWindowContents:function(a){if($("lightwindow_iframe")){Element.remove($("lightwindow_iframe"))}if($("lightwindow_media_primary")){try{$("lightwindow_media_primary").Stop()}catch(b){}Element.remove($("lightwindow_media_primary"))}if($("lightwindow_media_secondary")){try{$("lightwindow_media_secondary").Stop()}catch(b){}Element.remove($("lightwindow_media_secondary"))}if(a){$("lightwindow_contents").innerHTML="";if(!this.windowActive){$("lightwindow_title_bar_title").innerHTML=""}}this.resizeTo.height=null;this.resizeTo.width=null},_setStatus:function(a){this.animating=a;if(a){Element.show("lightwindow_loading")}if(!(/MSIE 6./i.test(navigator.userAgent))){if(this.element.fixedWindow){this._fixedWindow(a)}}},_fixedWindow:function(a){if(a){if(this.windowActive){this._getScroll();$("lightwindow").setStyle({position:"absolute",top:parseFloat($("lightwindow").getStyle("top"))+this.pagePosition.y+"px",left:parseFloat($("lightwindow").getStyle("left"))+this.pagePosition.x+"px"})}else{$("lightwindow").setStyle({position:"absolute"})}}else{if(this.windowActive){this._getScroll();$("lightwindow").setStyle({position:"fixed",top:parseFloat($("lightwindow").getStyle("top"))-this.pagePosition.y+"px",left:parseFloat($("lightwindow").getStyle("left"))-this.pagePosition.x+"px"})}else{if($("lightwindow_iframe")){this._browserDimensions()}$("lightwindow").setStyle({position:"fixed",top:(parseFloat(this._getParameter("lightwindow_top"))?parseFloat(this._getParameter("lightwindow_top"))+"px":this.dimensions.viewport.height/2+"px"),left:(parseFloat(this._getParameter("lightwindow_left"))?parseFloat(this._getParameter("lightwindow_left"))+"px":this.dimensions.viewport.width/2+"px")})}}},_prepareIE:function(c){if(Prototype.Browser.IE){var b,f,d;if(c){var b="100%"}else{var b="auto"}var a=document.getElementsByTagName("body")[0];var g=document.getElementsByTagName("html")[0];g.style.height=a.style.height=b}},_stopScrolling:function(a){if(this.animating){if(a.preventDefault){a.preventDefault()}a.returnValue=false}},_getScroll:function(){if(typeof(window.pageYOffset)=="number"){this.pagePosition.x=window.pageXOffset;this.pagePosition.y=window.pageYOffset}else{if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){this.pagePosition.x=document.body.scrollLeft;this.pagePosition.y=document.body.scrollTop}else{if(document.documentElement){this.pagePosition.x=document.documentElement.scrollLeft;this.pagePosition.y=document.documentElement.scrollTop}}}},_setScroll:function(a,b){document.documentElement.scrollLeft=a;document.documentElement.scrollTop=b},_toggleTroubleElements:function(a,d){if(d){var c=$("lightwindow_contents").getElementsByTagName("select")}else{var c=document.getElementsByTagName("select")}for(var b=0;b<c.length;b++){c[b].style.visibility=a}if(!d){if(this.options.hideFlash){var g=document.getElementsByTagName("object");for(b=0;b!=g.length;b++){g[b].style.visibility=a}var f=document.getElementsByTagName("embed");for(b=0;b!=f.length;b++){f[b].style.visibility=a}}var h=document.getElementsByTagName("iframe");for(b=0;b!=h.length;b++){h[b].style.visibility=a}}},_getPageDimensions:function(){var c,a;if(window.innerHeight&&window.scrollMaxY){c=document.body.scrollWidth;a=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){c=document.body.scrollWidth;a=document.body.scrollHeight}else{c=document.body.offsetWidth;a=document.body.offsetHeight}}var b,d;if(self.innerHeight){b=self.innerWidth;d=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){b=document.documentElement.clientWidth;d=document.documentElement.clientHeight}else{if(document.body){b=document.body.clientWidth;d=document.body.clientHeight}}}if(a<d){this.pageDimensions.height=d}else{this.pageDimensions.height=a}if(c<b){this.pageDimensions.width=b}else{this.pageDimensions.width=c}},_displayLightWindow:function(b,a){$("lightwindow_overlay").style.display=$("lightwindow").style.display=$("lightwindow_container").style.display=b;$("lightwindow_overlay").style.visibility=$("lightwindow").style.visibility=$("lightwindow_container").style.visibility=a},_setupDimensions:function(){var c,d;switch(this.windowType){case"page":c=this.options.dimensions.page.height;d=this.options.dimensions.page.width;break;case"image":c=this.options.dimensions.image.height;d=this.options.dimensions.image.width;break;case"media":c=this.options.dimensions.media.height;d=this.options.dimensions.media.width;break;case"external":c=this.options.dimensions.external.height;d=this.options.dimensions.external.width;break;case"inline":c=this.options.dimensions.inline.height;d=this.options.dimensions.inline.width;break;default:c=this.options.dimensions.page.height;d=this.options.dimensions.page.width;break}var a=this._getParameter("lightwindow_top")?parseFloat(this._getParameter("lightwindow_top"))+this.pagePosition.y:this.dimensions.viewport.height/2+this.pagePosition.y;var b=this._getParameter("lightwindow_left")?parseFloat(this._getParameter("lightwindow_left"))+this.pagePosition.x:this.dimensions.viewport.width/2+this.pagePosition.x;$("lightwindow").setStyle({top:a+"px",left:b+"px"});$("lightwindow_container").setStyle({left:-(d/2)+"px",top:-(c/2)+"px",width:d+22+"px"});$("lightwindow_contents").setStyle({height:c+"px",width:d+"px"})},_fileType:function(a){var f=new RegExp("[^.].("+this.options.fileTypes.image.join("|")+")s*$","i");if(f.test(a)){return"image"}if(a.indexOf("#")>-1&&(document.domain==this._getDomain(a))){return"inline"}if(a.indexOf("?")>-1){a=a.substring(0,a.indexOf("?"))}var b="unknown";var c=new RegExp("[^.].("+this.options.fileTypes.page.join("|")+")s*$","i");var d=new RegExp("[^.].("+this.options.fileTypes.media.join("|")+")s*$","i");if(document.domain!=this._getDomain(a)){b="external"}if(d.test(a)){b="media"}if(b=="external"||b=="media"){return b}if(c.test(a)||a.substr((a.length-1),a.length)=="/"){b="page"}return b},_fileExtension:function(c){if(c.indexOf("?")>-1){c=c.substring(0,c.indexOf("?"))}var b="";for(var a=(c.length-1);a>-1;a--){if(c.charAt(a)=="."){return b}b=c.charAt(a)+b}},_monitorKeyboard:function(a){if(a){document.onkeydown=this._eventKeypress.bind(this)}else{document.onkeydown=""}},_eventKeypress:function(b){if(b==null){var a=event.keyCode}else{var a=b.which}switch(a){case 27:this.deactivate();break;case 13:return;default:break}if(this.animating){return false}},_getDomain:function(f){var h=f.indexOf("//");var b=h+2;var d=f.substring(b,f.length);var a=d.indexOf("/");var g=d.substring(0,a);if(g.indexOf(":")>-1){var c=g.indexOf(":");g=g.substring(0,c)}return g},_getParameter:function(j,d){if(!this.element){return false}if(j=="lightwindow_top"&&this.element.top){return unescape(this.element.top)}else{if(j=="lightwindow_left"&&this.element.left){return unescape(this.element.left)}else{if(j=="lightwindow_type"&&this.element.type){return unescape(this.element.type)}else{if(j=="lightwindow_show_images"&&this.element.showImages){return unescape(this.element.showImages)}else{if(j=="lightwindow_height"&&this.element.height){return unescape(this.element.height)}else{if(j=="lightwindow_width"&&this.element.width){return unescape(this.element.width)}else{if(j=="lightwindow_loading_animation"&&this.element.loadingAnimation){return unescape(this.element.loadingAnimation)}else{if(j=="lightwindow_iframe_embed"&&this.element.iframeEmbed){return unescape(this.element.iframeEmbed)}else{if(j=="lightwindow_form"&&this.element.form){return unescape(this.element.form)}else{if(!d){if(this.element.params){d=this.element.params}else{return}}var g;var f=d.split(",");var c=j+"=";var h=c.length;for(var b=0;b<f.length;b++){if(f[b].substr(0,h)==c){var a=f[b].split("=");g=a[1];break}}if(!g){return false}else{return unescape(g)}}}}}}}}}}},_browserDimensions:function(){if(Prototype.Browser.IE){this.dimensions.viewport.height=document.documentElement.clientHeight;this.dimensions.viewport.width=document.documentElement.clientWidth}else{this.dimensions.viewport.height=window.innerHeight;this.dimensions.viewport.width=document.width||document.body.offsetWidth}},_getScrollerWidth:function(){var f=Element.extend(document.createElement("div"));f.setAttribute("id","lightwindow_scroll_div");f.setStyle({position:"absolute",top:"-10000px",left:"-10000px",width:"100px",height:"100px",overflow:"hidden"});var c=Element.extend(document.createElement("div"));c.setAttribute("id","lightwindow_content_scroll_div");c.setStyle({width:"100%",height:"200px"});f.appendChild(c);var b=document.getElementsByTagName("body")[0];b.appendChild(f);var d=$("lightwindow_content_scroll_div").offsetWidth;f.style.overflow="auto";var a=$("lightwindow_content_scroll_div").offsetWidth;Element.remove($("lightwindow_scroll_div"));this.scrollbarOffset=d-a},_addParamToObject:function(b,c,a,f){var d=document.createElement("param");d.setAttribute("value",c);d.setAttribute("name",b);if(f){d.setAttribute("id",f)}a.appendChild(d);return a},_outerHTML:function(a){if(Prototype.Browser.IE){return a.outerHTML}else{var c=a.cloneNode(true);var b=document.createElement("div");b.appendChild(c);return b.innerHTML}},_convertToMarkup:function(c,b){var a=this._outerHTML(c).replace("</"+b+">","");if(Prototype.Browser.IE){for(var d=0;d<c.childNodes.length;d++){a+=this._outerHTML(c.childNodes[d])}a+="</"+b+">"}return a},_appendObject:function(c,b,a){if(Prototype.Browser.IE){a.innerHTML+=this._convertToMarkup(c,b);if(this.options.EOLASFix.indexOf(this._fileType(this.element.href))>-1){var f=document.getElementsByTagName("object");for(var d=0;d<f.length;d++){if(f[d].getAttribute("data")){f[d].removeAttribute("data")}f[d].outerHTML=f[d].outerHTML;f[d].style.visibility="visible"}}}else{a.appendChild(c)}},_appendIframe:function(a){var b=document.createElement("iframe");b.setAttribute("id","lightwindow_iframe");b.setAttribute("name","lightwindow_iframe");b.setAttribute("src","about:blank");b.setAttribute("height","100%");b.setAttribute("width","100%");b.setAttribute("frameborder","0");b.setAttribute("marginwidth","0");b.setAttribute("marginheight","0");b.setAttribute("scrolling",a);this._appendObject(b,"iframe",$("lightwindow_contents"))},_writeToIframe:function(b){var a=this.options.skin.iframe;a=a.replace("{body_replace}",b);if($("lightwindow_iframe").contentWindow){$("lightwindow_iframe").contentWindow.document.open();$("lightwindow_iframe").contentWindow.document.write(a);$("lightwindow_iframe").contentWindow.document.close()}else{$("lightwindow_iframe").contentDocument.open();$("lightwindow_iframe").contentDocument.write(a);$("lightwindow_iframe").contentDocument.close()}},_loadWindow:function(){switch(this.windowType){case"image":var c=$("lightwindow_contents"),h=new Element("div",{id:"lightwindow_image_div"}),d=new Element("img",{id:"lightwindow_image",border:"0",src:this.contentToFetch});this.resizeTo.height=this.resizeTo.width=0;c.appendChild(h);h.appendChild(d);var b=false;if(this.element.rel){b=new Element("div",{id:"lightwindow_credits"}).update(this.element.rel);c.appendChild(b)}this.checkImage=new PeriodicalExecuter(function(){if(d==null){return}if(d.complete&&!(typeof d.naturalWidth!="undefined"&&d.naturalWidth==0)){this.checkImage.stop();var i=d.getHeight(),j=d.getWidth();this.resizeTo.height=i;this.resizeTo.width+=d.getWidth();d.setStyle({height:"100%",width:"100%"});this._processWindow()}}.bind(this),1);break;case"media":var g=0;this.resizeTo.height=this.resizeTo.width=0;if(this._getParameter("lightwindow_iframe_embed")){this.resizeTo.height=this.dimensions.viewport.height;this.resizeTo.width=this.dimensions.viewport.width}else{this.resizeTo.height=this._getParameter("lightwindow_height");this.resizeTo.width=this._getParameter("lightwindow_width")}this._processWindow();break;case"external":this._appendIframe("auto");this.resizeTo.height=this.dimensions.viewport.height;this.resizeTo.width=this.dimensions.viewport.width;this._processWindow();break;case"page":var a=new Ajax.Request(this.contentToFetch,{method:"get",parameters:"",onComplete:function(i){$("lightwindow_contents").innerHTML+=i.responseText;this.resizeTo.height=$("lightwindow_contents").scrollHeight;this.resizeTo.width=$("lightwindow_contents").scrollWidth;this._processWindow()}.bind(this)});break;case"inline":var f=this.contentToFetch;f=f.substring(f.indexOf("#")+1);new Insertion.Top($("lightwindow_contents"),$(f).innerHTML);if(Prototype.Browser.Gecko){this.resizeTo.height=$("lightwindow_contents").scrollHeight+1;this.resizeTo.width=$("lightwindow_contents").scrollWidth+2}else{if(Prototype.Browser.Opera){this.resizeTo.height=$("lightwindow_contents").scrollHeight;this.resizeTo.width=$("lightwindow_contents").scrollWidth}else{if(Prototype.Browser.IE){this.resizeTo.height=$("lightwindow_contents").scrollHeight-3;this.resizeTo.width=$("lightwindow_contents").scrollWidth+2}else{this.resizeTo.height=$("lightwindow_contents").scrollHeight;this.resizeTo.width=$("lightwindow_contents").scrollWidth+1}}}this._toggleTroubleElements("hidden",true);this._processWindow();break;default:throw ("Page Type could not be determined, please amend this lightwindow URL "+this.contentToFetch);break}},_resizeWindowToFit:function(){if(this.resizeTo.height+this.dimensions.cruft.height>this.dimensions.viewport.height){var a=this.resizeTo.height/this.resizeTo.width;this.resizeTo.height=this.dimensions.viewport.height-this.dimensions.cruft.height-(2*this.options.viewportPadding);if(this.windowType=="image"||(this.windowType=="media"&&!this._getParameter("lightwindow_iframe_embed"))){this.resizeTo.width=this.resizeTo.height/a}}if(this.resizeTo.width+this.dimensions.cruft.width>this.dimensions.viewport.width){var b=this.resizeTo.width/this.resizeTo.height;this.resizeTo.width=this.dimensions.viewport.width-2*this.dimensions.cruft.width-(2*this.options.viewportPadding);if(this.windowType=="image"||(this.windowType=="media"&&!this._getParameter("lightwindow_iframe_embed"))){this.resizeTo.height=this.resizeTo.width/b}}},_presetWindowSize:function(){if(this._getParameter("lightwindow_height")){this.resizeTo.height=parseFloat(this._getParameter("lightwindow_height"))}if(this._getParameter("lightwindow_width")){this.resizeTo.width=parseFloat(this._getParameter("lightwindow_width"))}},_processWindow:function(){this.dimensions.dataEffects=[];if(this.element.title!="null"){$("lightwindow_title_bar_title").innerHTML=this.element.title}else{$("lightwindow_title_bar_title").innerHTML=""}$("lightwindow_container").setStyle({height:"auto",width:$("lightwindow_container").getWidth()+"px"});this.dimensions.container={height:$("lightwindow_container").getHeight(),width:$("lightwindow_container").getWidth()};this.dimensions.cruft={height:this.dimensions.container.height-parseInt($("lightwindow_contents").style.height),width:this.dimensions.container.width-parseInt($("lightwindow_contents").style.width)};this._presetWindowSize();this._resizeWindowToFit();if(!this.windowActive){$("lightwindow_container").setStyle({left:-Math.round((this.dimensions.container.width/2))+"px",top:-Math.round((this.dimensions.container.height/2))+"px"})}$("lightwindow_container").setStyle({height:this.dimensions.container.height+"px",width:this.dimensions.container.width+"px"});this._displayLightWindow("block","visible");Element.hide("lightwindow_loading");this._animateLightWindow()},_animateLightWindow:function(){if(this.options.animationHandler){this.options.animationHandler().bind(this)}else{this._defaultAnimationHandler()}},_handleTransition:function(){if(this.options.transitionHandler){this.options.transitionHandler().bind(this)}else{this._defaultTransitionHandler()}},_handleFinalWindowAnimation:function(a){if(this.options.finalAnimationHandler){this.options.finalAnimationHandler().bind(this,a)}else{this._defaultfinalWindowAnimationHandler(a)}},_defaultAnimationHandler:function(){var b=$("lightwindow_title_bar_inner"),c=$("lightwindow_container"),a=$("lightwindow_contents");b.setStyle({height:"0px",marginTop:this.options.dimensions.titleHeight+"px"});this.dimensions.container={width:this.resizeTo.width+this.dimensions.cruft.width,height:this.resizeTo.height+this.dimensions.cruft.height};new Effect.Parallel([new Effect.Scale(c,100*(this.dimensions.container.width+2)/c.getWidth(),{sync:true,scaleY:false,scaleContent:false,scaleFromCenter:true}),new Effect.Scale(c,100*(this.dimensions.container.height+2)/c.getHeight(),{sync:true,scaleX:false,scaleContent:false,scaleFromCenter:true}),new Effect.Scale(a,100*(this.resizeTo.width+2)/parseInt(a.style.width),{sync:true,scaleY:false,scaleMode:{originalWidth:parseInt(a.style.width)}}),new Effect.Scale(a,100*(this.resizeTo.height+2)/parseInt(a.style.height),{sync:true,scaleX:false,scaleMode:{originalHeight:parseInt(a.style.height)}})],{duration:this.duration,afterFinish:function(){new Effect.Parallel([new Effect.Morph(b,{sync:true,style:{height:this.options.dimensions.titleHeight+"px",marginTop:"0px"}}),new Effect.Appear(b,{sync:true,from:0,to:1})],{duration:this.duration,afterFinish:function(){this._finishWindow()}.bind(this),queue:{position:"end",scope:"lightwindowAnimation"}})}.bind(this),queue:{position:"end",scope:"lightwindowAnimation"}})},_defaultfinalWindowAnimationHandler:function(a){if(this.windowType=="media"||this._getParameter("lightwindow_loading_animation")){Element.hide("lightwindow_loading");this._setStatus(false)}else{Effect.Fade("lightwindow_loading",{duration:0.75,delay:1,afterFinish:function(){this._setStatus(false)}.bind(this),queue:{position:"end",scope:"lightwindowAnimation"}})}},_defaultTransitionHandler:function(){this.dimensions.dataEffects=[];if($("lightwindow_data_slide").getStyle("display")!="none"){this.dimensions.dataEffects.push(new Effect.SlideUp("lightwindow_data_slide",{sync:true}),new Effect.Fade("lightwindow_data_slide",{sync:true,from:1,to:0}))}this.dimensions.dataEffects.push(new Effect.Morph("lightwindow_title_bar_inner",{sync:true,style:{height:"0px",marginTop:this.options.dimensions.titleHeight+"px"}}),new Effect.Fade("lightwindow_title_bar_inner",{sync:true,from:1,to:0}));new Effect.Parallel(this.dimensions.dataEffects,{duration:this.duration,afterFinish:function(){this._loadWindow()}.bind(this),queue:{position:"end",scope:"lightwindowAnimation"}})},_defaultFormHandler:function(d){var b=Event.element(d).parentNode;var c=Form.serialize(this._getParameter("lightwindow_form",b.getAttribute("params")));if(this.options.formMethod=="post"){var a=new Ajax.Request(b.href,{method:"post",postBody:c,onComplete:this.openWindow.bind(this,b)})}else{if(this.options.formMethod=="get"){var a=new Ajax.Request(b.href,{method:"get",parameters:c,onComplete:this.openWindow.bind(this,b)})}}},_finishWindow:function(){var b=$("lightwindow_contents"),c=$("lightwindow_container");b.setStyle({overflow:"auto"});if(b.scrollHeight>b.clientHeight){c.style.width=parseInt(c.style.width)+this.scrollbarOffset+"px";c.style.left=parseInt(c.style.left)-Math.round(this.scrollbarOffset/2)+"px";b.style.width=parseInt(b.style.width)+this.scrollbarOffset+"px"}if(this.windowType=="external"){$("lightwindow_iframe").setAttribute("src",this.element.href);this._handleFinalWindowAnimation(1)}else{if(this.windowType=="media"){var d=document.createElement("object");d.setAttribute("classid",this.options.classids[this._fileExtension(this.contentToFetch)]);d.setAttribute("codebase",this.options.codebases[this._fileExtension(this.contentToFetch)]);d.setAttribute("id","lightwindow_media_primary");d.setAttribute("name","lightwindow_media_primary");d.setAttribute("width",this.resizeTo.width);d.setAttribute("height",this.resizeTo.height);d=this._addParamToObject("movie",this.contentToFetch,d);d=this._addParamToObject("src",this.contentToFetch,d);d=this._addParamToObject("controller","true",d);d=this._addParamToObject("wmode","transparent",d);d=this._addParamToObject("cache","false",d);d=this._addParamToObject("quality","high",d);if(!Prototype.Browser.IE){var a=document.createElement("object");a.setAttribute("type",this.options.mimeTypes[this._fileExtension(this.contentToFetch)]);a.setAttribute("data",this.contentToFetch);a.setAttribute("id","lightwindow_media_secondary");a.setAttribute("name","lightwindow_media_secondary");a.setAttribute("width",this.resizeTo.width);a.setAttribute("height",this.resizeTo.height);a=this._addParamToObject("controller","true",a);a=this._addParamToObject("wmode","transparent",a);a=this._addParamToObject("cache","false",a);a=this._addParamToObject("quality","high",a);d.appendChild(a)}if(this._getParameter("lightwindow_iframe_embed")){this._appendIframe("no");this._writeToIframe(this._convertToMarkup(d,"object"))}else{this._appendObject(d,"object",b)}this._handleFinalWindowAnimation(0)}else{this._handleFinalWindowAnimation(0)}}this._setupActions()}};Event.observe(window,"load",lightwindowInit,false);var myLightWindow=null;function lightwindowInit(){myLightWindow=new lightwindow()}myDeco.room_competition={loginUrl:myDeco.urls.userLogin+"?next="+document.location.href,ajaxUrls:myDeco.urls.room_competition,room_id:undefined,entry_ids:undefined,competition_id:undefined,has_template:false,handleAjaxFailure:function(b,a){console.log("Error : room_competition.js : myDeco.room_competition."+b+" ajax failure (HTTP "+a.status+" : "+a.responseText+")");myDeco.popupForms.alert("An unexpected error occurred.  Please try again.")},init:function(){if(typeof(this.room_id)!="undefined"){this.initRoomPage()}if(typeof(this.competition_id)!="undefined"){this.initCompetitionPage()}},initRoomPage:function(){var a=this;this.entry_ids.each(function(b){var c=$("vote-"+b);if(c){if(!myDeco.username){c.href=a.loginUrl}else{c.observe("click",a.voteForEntry.bindAsEventListener(a,b))}}});if(this.room_owner==myDeco.username){if($("competition-vote")){$("competition-vote").hide()}if($("competition-entry")){this.getAvailableCompetitions()}}},showVoteResult:function(b){var a=b.responseText.evalJSON();var c=$("thankyou-"+a.entry_id);$("vote-"+a.entry_id).hide();if(!a.success){c.addClassName("error");c.update(a.error)}c.show()},voteForEntry:function(b,a){b.stop();new Ajax.Request(this.ajaxUrls.vote_ajax,{parameters:{entry_id:a},onSuccess:this.showVoteResult.bind(this),onFailure:this.handleAjaxFailure.bind(this,"voteForEntry")})},showAvailableCompetitions:function(c){var b=c.responseText.evalJSON();if(b.success&&b.entry_block.length){var a=$("competition-entry");var d=a.up(".room-detail-competition-block");a.update(b.entry_block);a.show();if(this.room_owner==myDeco.username&&a.empty()&&d){d.hide()}}myDeco.formControls.submitButtons.init();var f=this;b.competition_ids.each(function(g){var h=$("entry-form-"+g);h.observe("submit",f.enterCompetitionWithRoom.bindAsEventListener(f,g))})},getAvailableCompetitions:function(){new Ajax.Request(this.ajaxUrls.available_competitions_ajax,{parameters:{room_id:this.room_id},onSuccess:this.showAvailableCompetitions.bind(this),onFailure:this.handleAjaxFailure.bind(this,"getAvailableCompetitions")})},showEntryResult:function(b){var a=b.responseText.evalJSON();var d=$("error-"+a.competition_id);if(!a.success){var d=$("error-"+a.competition_id);d.update(a.error).show()}else{d.hide();$("entry-form-"+a.competition_id).hide();var c=$("goodluck-"+a.competition_id);c.select("a.force-cache-miss").each(function(f){myDeco.addCacheMissParam(f)});c.show()}},enterCompetitionWithRoom:function(c,a){c.stop();var d=myDeco.room_competition,b=$("entry-form-"+a);if(b.postcode){myDeco.location2coords(b.postcode.getValue(),function(f){d._enterCompetitionWithRoom(a,f)},function(f){console.log("myDeco.room_competition.enterCompetitionWithRoom:",f);d._enterCompetitionWithRoom(a)})}else{d._enterCompetitionWithRoom(a)}},_enterCompetitionWithRoom:function(a,c){var d=myDeco.room_competition,b=$("entry-form-"+a);if(c){b.coords.value=c[0]+","+c[1]}new Ajax.Request(d.ajaxUrls.entry_ajax,{parameters:Object.extend(b.serialize(true),{room:d.room_id,competition:a}),onSuccess:d.showEntryResult.bind(d),onFailure:d.handleAjaxFailure.bind(d,"entry"),onComplete:function(){myDeco.formControls.submitButtons.enable(b)}})},loginOrRegister:function(f,b,c){f.stop();var d=f.element(),a=this;new Ajax.Request(d.readAttribute("action"),{method:"post",parameters:d.serialize(true),onSuccess:function(g){myDeco.user.setUserData();myDeco.user.init();b.hide();c.stopObserving("click");c.observe("click",a.getEntryForm.bindAsEventListener(a));a.getEntryForm()},onFailure:function(h){var g=h.responseText.evalJSON();d.select(".error").invoke("hide");if(typeof g.error.message=="object"){$H(g.error.message)._each(function(i){var j=d.down("#id_"+i.key+"_new_error");if(j){j.update(i.value).show()}})}else{d.down(".error").update(g.error.message).show()}},onComplete:function(){myDeco.formControls.submitButtons.enable(d)}})},showLoginForm:function(c){c.stop();var b=$("competition-login-div"),a=c.element();if(b){b.show();b.down("#competition-login").observe("submit",this.loginOrRegister.bindAsEventListener(this,b,a));b.down("#competition-register").observe("submit",this.loginOrRegister.bindAsEventListener(this,b,a));b.down(".close").observe("click",function(d){d.stop();b.hide()})}},reloadPage:function(){window.location.href=myDeco.addCacheMissParam(window.location.href)},initCompetitionPage:function(){var a=this;$$("#get-started-now, #be-the-first").invoke("observe","click",function(c){if(!myDeco.username){a.showLoginForm(c)}else{a.getEntryForm(c)}});if($("tab-entries-on-a-map-container")){myDeco.room_competition.geo.init()}var b=$("show-all-entries");if(b){b.observe("click",this.showAllEntries)}$$("body").invoke("observe","modeleditor:compenter",a.reloadPage.bindAsEventListener(a))},useThisRoom:function(b){var a=b.findElement("FORM");b.stop();return a.request({onSuccess:function(d){var c=d.responseText.evalJSON();var g=$("entry-error");if(!c.success){g.update(c.error);g.show()}else{a.select(".submit-button").invoke("hide");g.hide();var f=$("goodluck");f.show()}},onFailure:this.handleAjaxFailure.bind(this,"useThisRoom"),onComplete:function(){myDeco.formControls.submitButtons.enable(a)}})},submitEntry:function(b){var a=b.findElement("FORM");b.stop();if(a.id=="upload-photo-form"){setTimeout(function(){a.submit()},50)}else{this.useThisRoom(b)}},uploadPhotoResult:function(d,a){var f=$("upload-photo-error");if(!d){f.update(a);f.show();myDeco.formControls.submitButtons.enable()}else{try{var b=s_gi(s_account);b.pageName=s_pagename+"[Ajax]";b.prop3=s_pagetype+"[Ajax]";b.prop8="room_photo";b.t()}catch(c){}$("competition-entry-div").hide();window.setTimeout(function(){window.location.href=myDeco.addCacheMissParam(window.location.href)},1000)}},closeEntryForm:function(a){a.stop();$("competition-entry-div").hide()},showEntryForm:function(c){var b=c.responseText.evalJSON();if(b.success){var d=$("competition-entry-div");d.update(b.form_block);d.show();d.select("form").invoke("observe","submit",this.getCoords.bind(this));$("close-entry-form").observe("click",this.closeEntryForm.bindAsEventListener(this));$$("a.create-and-enter").invoke("observe","click",function(h){h.stop();var g=h.findElement("a");switchToolState(h,"enterCompetition",g.rel,g);$("competition-entry-div").hide()});myDeco.fileInputs.init();myDeco.formControls.submitButtons.init();var f=$("body").getHeight()-d.cumulativeOffset().top-d.getHeight();if(f<20){d.setStyle({height:d.getHeight()-30+f-20+"px"});var a=$("competition-entry-scroll");a.setStyle({height:a.getHeight()-30+f-20+"px"})}}},getEntryForm:function(b){if(b){b.stop()}if(!myDeco.room_competition.has_template){new Ajax.Request(this.ajaxUrls.entry_form_ajax,{parameters:{competition_id:this.competition_id},onSuccess:this.showEntryForm.bind(this),onFailure:this.handleAjaxFailure.bind(this,"getEntryForm")})}else{var a=$("get-started-now");switchToolState(b,"enterCompetition",a.rel,a)}},getCoords:function(c){var a=this,b=c.element();c.stop();if(!b.coords||!b.postcode||!b.postcode.getValue()){this.submitEntry(c);return}myDeco.location2coords(b.postcode.getValue(),function(d){b.coords.value=d[0]+","+d[1];a.submitEntry(c)},function(d){console.log("myDeco.room_competition.enterCompetitionWithRoom:",d);a.submitEntry(c)})},showAllEntries:function(a){a.stop();a.element().hide();$("competition-entries").appear()}};addLoadEvent(myDeco.room_competition.init.bind(myDeco.room_competition));myDeco.room_competition.geo={markers:[],map:null,current_location:null,init:function(){var b=myDeco.room_competition.geo,a=myDeco.tabs.tabSwitcherCollection.getSwitcherById("competition-tab-switcher");a.addCallback(b.tabCallback)},initMapView:function(){if(!$("competition-map")&&!GMap2&&!ExtLargeMapControl&&!ExtInfoWindow){return}if(!GBrowserIsCompatible()){myDeco.popupForms.alert("Sorry, your browser is not yet supported to use this tool.");return}$("postcode-form").observe("submit",function(){a.refineMapView()});var a=myDeco.room_competition.geo;a.map=new GMap2(document.getElementById("competition-map"));a.map.getMapTypes().each(function(b){b.getMaximumResolution=function(){return 11}});a.map.setCenter(new GLatLng(54.5,-4.5),6);a.map.addControl(new GMapTypeControl());a.map.addControl(new ExtLargeMapControl());a.map.enableScrollWheelZoom()},tabCallback:function(a){var b=myDeco.room_competition.geo;if(a.getContainer().id=="tab-entries-on-a-map-container"){b.showMapView()}},showMapView:function(){var a=myDeco.room_competition.geo;if(!a.map){a.initMapView()}new Ajax.Request(myDeco.urls.room_competition.geo_entries_ajax,{method:"get",parameters:{competition_id:myDeco.room_competition.competition_id},onSuccess:a.addMarkers,onFailure:myDeco.room_competition.handleAjaxFailure.bind(this,"useThisRoom")})},refineMapView:function(){var b=myDeco.room_competition.geo,a=$("postcode").getValue();if(!a){return false}$("postcode").removeClassName("error");myDeco.location2coords(a,function(i){var h=myDeco.room_competition.geo,c=new GLatLng(i[0],i[1]),d=new GIcon(G_DEFAULT_ICON);h.map.setCenter(c);if(h.homeMarker){h.map.removeOverlay(h.homeMarker)}d.image=myDeco.settings.STATIC_URL+"img/geo/markers/home.png";d.shadow=null;d.iconSize=new GSize(34,34);d.iconAnchor=new GPoint(17,34);d.infoWindowAnchor=new GPoint(15,12);h.homeMarker=new GMarker(c,{icon:d});h.homeMarker.showInfo=function(){this.openExtInfoWindow(h.map,"geo-home",'<div class="geo-info-window-wrap">You are here</div>',{beakOffset:-1,paddingX:110,paddingY:110})};GEvent.addListener(h.homeMarker,"click",function(){this.showInfo()});h.map.addOverlay(h.homeMarker);var g=h.markers.sortBy(function(j){return j.getLatLng().distanceFrom(c)});var f=new GLatLngBounds();f.extend(c);g.each(function(j,k){if(k<5){f.extend(j.getLatLng())}});h.map.setCenter(f.getCenter());h.map.setZoom(h.map.getBoundsZoomLevel(f))},function(){$("postcode").addClassName("error")});return true},addMarkers:function(d){var c=myDeco.room_competition.geo,a=d.responseText.evalJSON(),b=new GLatLngBounds();c.markers.each(function(f){c.map.removeOverlay(f)});if(a.success){a.rooms.each(function(j,g){var h=new GIcon(G_DEFAULT_ICON);h.shadow=myDeco.settings.STATIC_URL+"img/geo/markers/shadow50.png";h.image=myDeco.settings.STATIC_URL+"img/geo/markers/red-dot.png";h.infoWindowAnchor=new GPoint(7,2);j.coords=j.coords.split(",");j.coords=new GLatLng(j.coords[0],j.coords[1]);b.extend(j.coords);var f=new GMarker(j.coords,{icon:h});f.showInfo=function(){this.openExtInfoWindow(c.map,"geo-entity",'<div class="geo-info-window-wrap"><div class="room-competition-thumb" style="background-image:url('+j.thumbnail+')"><a href="'+j.url+'" title="'+j.name+'"></a></div><h3><a class="c2" href="'+j.url+'">'+j.name+'</a></h3><p>Created by <a href="/people/'+j.author+'/summary/">'+j.author+"</a></p></div>",{beakOffset:-1,paddingX:110,paddingY:110})};GEvent.addListener(f,"click",function(){this.showInfo()});c.map.addOverlay(f);c.markers[g]=f});if(!c.refineMapView()){c.map.setCenter(b.getCenter());c.map.setZoom(c.map.getBoundsZoomLevel(b))}}}};myDeco.roomDetail={init:function(){if(myDeco.username&&myDeco.roomDetail.room_owner==myDeco.username){$$(".other-option").invoke("hide");$$(".own-option").invoke("show");$("switchstate").observe("click",function(a){a.stop();myDeco.roomDetail.switchState()})}},switchState:function(){var a=(myDeco.roomDetail.room_state=="public"?myDeco.urls.markRoomPrivate:myDeco.urls.markRoomPub);new Ajax.Request(a,{method:"post",parameters:{room_id:myDeco.roomDetail.room_id},onSuccess:function(b){myDeco.roomDetail.switchState_success(b)},onFailure:function(c){var b=c.responseText.evalJSON(true);if(b.error){}myDeco.popupForms.alert(b.error.message,null,button)}})},switchState_success:function(b){var a=b.responseText.evalJSON();if(!a.success){myDeco.popupForms.handleFailure();return}if(!a["public"]){myDeco.roomDetail.room_state="private";$("private-public").innerHTML="public"}else{myDeco.roomDetail.room_state="public";$("private-public").innerHTML="private"}}};addLoadEvent(myDeco.roomDetail.init);myDeco.inlineForms={init:function(){try{console.log("myDeco.inlineForms.init");myDeco.inlineFormCheck.init();var b=$$(".inline-form-button");b._each(function(d){d.form=$(d.id.replace(/-button/,""));if(d.form==null){return}d.effect=false;d.formOpen=false;d.showForm=function(g){Event.stop(g);if(!d.effect&&!d.formOpen){var f=$("reply-sent");if(f){f.remove()}d.form.select(".error-message").invoke("hide");d.form.select(".bubble").invoke("remove");d.effect=Effect.SlideDown(d.form,{duration:0.6,afterFinish:function(){d.formOpen=true;d.effect=false;if(Prototype.Browser.IE&&$("id_blog_content")&&(FCKeditorAPI.GetInstance("id_blog_content").EditMode==FCK_EDITMODE_WYSIWYG)){oEditor.MakeEditable()}if(d.form.id!="rated"){d.form.scrollTo()}}});if(d.form.id=="message-reply"&&$("message-reply-button")){$("message-reply-button").hide()}if(d.form.id=="rated"){d.hide()}}};d.observe("click",function(f){d.showForm(f)});if(!d.hasClassName("alternate")){d.hideForm=function(){Effect.SlideUp(d.form,{duration:0.6,queue:"end",afterFinish:function(){d.formOpen=false}})};d.form.select(".cancel").invoke("observe","click",function(f){f.stop();d.hideForm();if(d.form.id=="message-reply"&&$("message-reply-button")){$("message-reply-button").show()}});if((!document.implementation.hasFeature("Events","2.0"))&&(d.form.tagName!="FORM")){var c=d.form.down("form");c.observe("submit",function(f){myDeco.inlineForms.submit(f,d)})}else{d.form.observe("submit",function(f){myDeco.inlineForms.submit(f,d)})}if(d.form.id=="ask-question"){d.form.observe("click",function(f){myDeco.inlineForms.showBubble(f)})}}})}catch(a){console.log("Error: popup-forms.js : myDeco.inlineForms.init : "+a)}},submit:function(g,c){try{var d=g.element();var b=d.down(".submit-button a");if(b.hasClassName("disabled")){return}b.toggleClassName("disabled");var a=myDeco.formValidation.validate(d);if(a.valid){if(d.getAttribute("ajaxsubmit")!="false"){Event.stop(g);var h=d.serialize();var f=myDeco.urls[d.getAttribute("ajaxmethod")];var i=d.getAttribute("ajaxmethod");if(!f){f=d.getAttribute("action")+"ajax/"}new Ajax.Request(f,{method:"post",parameters:h,onCreate:function(){console.log("sending...")},onSuccess:function(j){myDeco.inlineForms.success(j,d,i,c,b)},onFailure:function(j){b.toggleClassName("disabled");console.log("failure")}})}}else{g.stop();b.toggleClassName("disabled")}}catch(g){console.log("popup-forms.js : inlineForms : submit : "+g)}},showBubble:function(b){try{var c=document.getElementsByClassName("bubble",Event.element(b).parentNode);var a=Event.element(b);if(a.tagName!="OPTION"){c[0].show();a.observe("blur",function(){c[0].hide()})}}catch(b){console.log("popup-foms.js : inlineForms : showBubble :"+b)}},clearAllBubbles:function(a){a.getElements()._each(function(b){if(b.bubble instanceof Object){b.bubble.remove();b.bubble=null}})},success:function(d,c,b,h,f){try{var g=d.responseText.evalJSON();this.clearAllBubbles(c);if(g.success){if(c.getAttribute("ajaxreset")!="false"){c.reset()}var i;if(myDeco.inlineForms.update[b]){i=myDeco.inlineForms.update[b](g)}var a=c.up(".inline-form");h.hideForm();if(i){Effect.Appear(i,{queue:"end",afterFinish:function(){f.toggleClassName("disabled")}})}}else{f.toggleClassName("disabled");try{g.errors._each(function(l){console.log(l.field+" : "+l.error);if(l.field=="__all__"){l.field="comment"}var m=c.elements[l.field];var k=myDeco.bubbles.create(l.error);m.parentNode.appendChild(k);m.bubble=k})}catch(j){console.log(j)}}}catch(j){console.log("popup-foms.js : inlineForms : success :"+j)}},showMessage:function(b){try{var a=Builder.node("div",[Builder.node("div",{className:"inline-form-message",style:"display:none"},successmessage)]);b.insert(b,a.innerHTML)}catch(c){console.log("popup-forms.js : inlineForms : showMessage :"+c)}},update:{sendMessage:function(b){try{var d=$("message-reply");if(d){var a=d.parentNode;var c=Builder.node("div",[Builder.node("li",{className:"alert own"},[Builder.node("div",{className:"message"},[Builder.node("div",{className:"user-avatar avatar"},[Builder.node("a",{href:"/profile/"+b.sender+"/"},[Builder.node("img",{src:b.sender_avatar,width:82,height:82})])]),Builder.node("div",{className:"content-block"},[Builder.node("div",{className:"headers"},[Builder.node("strong",{className:"t3 name"},b.sender)]),Builder.node("div",{className:"content"},[Builder.node("p",b.message)])]),Builder.node("div",{className:"clear"})]),Builder.node("div",{className:"footer"},[Builder.node("div",{className:"footer-line"}," ")])])]);Element.insert(d,{after:c.innerHTML});return($("reply-sent"));setTimeout("window.location.reload()",1000)}}catch(f){console.log("popup-foms.js : inlineForms : update : sendMessage :"+f)}},askQuestion:function(b){try{console.log("popup-forms.js : inlineForms.update.askQuestion");var a=Builder.node("div",[Builder.node("li",{className:"question",style:"display:none;"},[Builder.node("div",{className:"avatar"},[Builder.node("img",{src:b.question.avatarUrl,width:82,height:82})]),Builder.node("div",{className:"headers"},[Builder.node("strong",{className:"title"},[Builder.node("a",{href:"/profile/"+b.question.username+"/"},b.question.username)]),Builder.node("br"),Builder.node("span",{className:"date"}," on "+b.question.datetime+" | ")]),Builder.node("div",{className:"body"},[Builder.node("strong",{className:"title"},b.question.subject),Builder.node("p",b.question.answers+" answers"),Builder.node("a",{href:b.question.url},"more")])])]);Element.insert("recently-asked-questions",{top:a.innerHTML});return($("recently-asked-questions").firstChild)}catch(c){console.log("popup-foms.js : inlineForms : update : askQuestion :"+c)}},addBookmark:function(c){try{var h={object_id:c.bookmark.id};var i=Builder.node("a",{id:"delete-scrapbook-button-"+c.bookmark.id,className:"button-delete",href:"/scrapbook/"+c.bookmark.id+"/delete"},"delete bookmark");var g=Builder.node("p");g.innerHTML=c.bookmark.description;var b=Builder.node("div",[Builder.node("li",{id:"scrapbook-item-"+c.bookmark.id,className:"bookmark",style:"display:none;"},[Builder.node("a",{className:"title t3 c1",href:c.bookmark.url},[Builder.node("strong",c.bookmark.title)]),Builder.node("span",{className:"date"},c.bookmark.created),Builder.node("a",{className:"link c1",href:c.bookmark.url},c.bookmark.url),g,Builder.node("a",{className:"button",href:"/scrapbook/"+c.bookmark.id+"/edit/"},[Builder.node("span",{className:"inner"},"edit")]),i])]);var d=$("bookmark-list");if(!d){var a=$$(".empty-state");var d=Builder.node("ul",{id:"bookmark-list"});a[0].parentNode.appendChild(d);a[0].remove();d=$("bookmark-list")}Element.insert(d,{top:b.innerHTML});myDeco.inlineForms.updateItemCounter(1);Event.observe(i.id,"click",function(j){myDeco.popupForms.deleteScrapbookItem.init(h,j)});return(d.firstChild)}catch(f){console.log("popup-forms.js : inlineForms : update : addBookmark :"+f)}},addNote:function(b){console.log("update.addNote");var g=Builder.node("a",{id:"scrapbook-delete-button-"+b.note.id,className:"button-delete",href:"#"},"delete");var f={object_id:b.note.id};var c=Builder.node("div",[Builder.node("li",{id:"scrapbook-item-"+b.note.id,className:"note",style:"display:none;"},[Builder.node("strong",{className:"title t3"},b.note.title),Builder.node("span",{className:"date"},b.note.created),$(Builder.node("p")).update(b.note.description),Builder.node("a",{className:"button",href:"/scrapbook/"+b.note.id+"/edit/"},[Builder.node("span",{className:"inner"},"edit")]),g])]);var d=$("note-list");if(!d){var a=$$(".empty-state");var d=Builder.node("ul",{id:"note-list"});a[0].parentNode.appendChild(d);a[0].remove();d=$("note-list")}Element.insert("note-list",{top:c.innerHTML});myDeco.inlineForms.updateItemCounter(1);Event.observe($(g.id),"click",function(h){myDeco.popupForms.deleteScrapbookItem.init(f,h)});return(d.firstChild)},addReview:function(d){d.ratings._each(function(j){if(j.type=="rating"){img_id="avg-rating";not_rated_id="avg-not-rated"}else{img_id=j.type+"-avg-rating";not_rated_id=j.type+"-avg-not-rated"}if(j.score){if($(img_id)){$(img_id).src=myDeco.settings.STATIC_URL+"img/product/star-rating"+j.score+".png"}else{$(not_rated_id).replace('<img src="'+myDeco.settings.STATIC_URL+"img/product/star-rating"+j.score+'.png" id="'+img_id+'" />')}}});if(!d.review.comment){return}var b=$("user-review"+d.review.id);if(!b){b=$("new-user-review");b.id="user-review"+d.review.id;b.removeClassName("hidden");b.addClassName("last");if($("no-reviews")){$("no-reviews").remove();var i=b.parentNode;var f=Builder.node("h3","mydeco customer reviews");var c=Builder.node("div",{"class":"ratings-and-reviews"},[Builder.node("div",{"class":"reviews-container"})]);i.insertBefore(f,b);i.insertBefore(c,b);c.firstChild.appendChild(i.removeChild(b))}}else{b.update("")}ratings=Builder.node("div",{"class":"ratings"},[Builder.node("h4",d.user.username+"'s ratings")]);d.rating_order._each(function(l){if(l=="rating"){return}var m=Builder.node("h5",d.avail_ratings[l].title);var j=Builder.node("div",{"class":"rating-stars"});j.id="rating-stars-"+l;if(d.review.ratings[l]>0){var k=Builder.node("img",{src:myDeco.settings.STATIC_URL+"img/product/star-rating"+d.review.ratings[l]+".png","class":"stars-image"})}else{var k=Builder.node("span",{"class":"not-rated"},"Not rated")}j.appendChild(k);ratings.appendChild(m);ratings.appendChild(j)});var h=Builder.node("div",{"class":"comment avatar"},[Builder.node("a",{href:d.user.url},[Builder.node("img",{src:d.user.avatar_url})])]);var g=Builder.node("div",{"class":"review"},[Builder.node("p",{"class":"user"},[Builder.node("a",{href:d.user.url},d.user.username)]),Builder.node("p",{"class":"date"},d.review.created),Builder.node("p",d.review.comment)]);var a=Builder.node("div",[ratings,h,g]);Element.insert(b,{top:a.innerHTML});return(b.firstChild)}},updateItemCounter:function(c){var b=$("item-counter");var a=$("item-pluralizer");var f=a.innerHTML;if(b){var d=b.innerHTML;d=(d=="no")?1:((d*1)+c);b.innerHTML=d;if(a){pluralised=(f.substring(f.length-1)=="s")?f:f+"s";notPluralised=pluralised.substring(0,pluralised.length-1);a.innerHTML=(d>1||d==0)?pluralised:notPluralised}}}};addLoadEvent(myDeco.inlineForms.init);myDeco.knowledge={init:function(){console.log("myDeco.knowledge.init");$$("#question-list a.expand")._each(function(a){a.invoke("observe","click",myDeco.knowledge.expand)})},expand:function(c){var a=Event.element(c);var b=c.findElement("LI");b.toggleClassName("expanded");a.innerHTML=a.innerHTML.indexOf("View")>-1?"Hide answers":"View full question";a.blur();Event.stop(c)}};addLoadEvent(myDeco.knowledge.init);myDeco.editStrapline={init:function(){console.log("myDeco.editStrapline.init");var c=$("strapline-text");var b=$("strapline-form");var d=$("strapline-input");var a=$("generator-link");if(b&&c){Event.observe(c,"click",myDeco.editStrapline.showForm);b.observe("submit",function(f){Event.stop(f)});a.observe("click",myDeco.editStrapline.generateStrapline);$("strapline-app").observe("keypress",myDeco.editStrapline.handleSubmit)}},generateStrapline:function(b){this.blur();var a=$("strapline-input");a.value=generate_strapline();a.focus()},handleSubmit:function(a){if(window.event&&window.event.keyCode==13){myDeco.editStrapline.send(a)}else{if(a&&(a.keyCode==13||a.which==13)){myDeco.editStrapline.send(a)}}},send:function(b){var a=$("strapline-form");if(b){Event.stop(b)}ajaxMethod="editStrapline";new Ajax.Request(myDeco.urls[ajaxMethod],{parameters:a.serialize(true),onSuccess:myDeco.editStrapline.handleSuccess})},hideForm:function(){if($("strapline-form").style.display!="none"){var a=$("generator-link");$("strapline-form").toggle();$("text").toggle();myDeco.editStrapline.inputVisible=false;a.hide();$("strapline-bubble").hide()}},showForm:function(h){if(!myDeco.editStrapline.inputVisible){var c=Event.element(h);var f=$("strapline-form");var g=$("strapline-input");var d=$("generator-link");g.value=$("text").innerHTML;f.show();d.show();$("text").hide();myDeco.editStrapline.inputVisible=true;g.focus();var a=$("strapline-bubble");if(a.parentNode.id!="main"){$("main").appendChild(a.parentNode.removeChild(a))}$("strapline-bubble").show()}},handleSuccess:function(b){$("strapline-input").blur();var a=b.responseText.evalJSON();if(a.strapline){$("text").innerHTML=a.strapline}myDeco.editStrapline.hideForm()},inputVisible:false};addLoadEvent(myDeco.editStrapline.init);myDeco.editTipsTitle={init:function(){console.log("myDeco.editTipsTitle.init");if(!$("add-blog")){return}var b=$("edit-title");var a=$("tips_name");var c=$("tips_form");var d=$("tips_input");if(c&&a){Event.observe(b,"click",myDeco.editTipsTitle.showForm);d.observe("blur",function(f){myDeco.editTipsTitle.hideForm()});c.observe("submit",function(f){Event.stop(f)});c.observe("keypress",myDeco.editTipsTitle.handleSubmit)}},sendTitle:function(){ajaxMethod="editTipsTitle";new Ajax.Request(myDeco.urls[ajaxMethod],{parameters:$("tips_form").serialize(true),onSuccess:myDeco.editTipsTitle.handleSuccess})},handleSubmit:function(b){var a;if(!b){var b=window.event}if(b.keyCode){a=b.keyCode}else{if(b.which){a=b.which}}if(a==13){myDeco.editTipsTitle.sendTitle()}},hideForm:function(){$("tips_form").toggle();$("tips_name").toggle();$("edit-title").toggle()},showForm:function(d){Event.stop(d);var a=Event.element(d);var b=$("tips_form");var c=$("tips_input");c.value=$("tips_name").innerHTML;b.toggle();$("tips_name").toggle();c.focus();$("edit-title").toggle()},handleSuccess:function(b){var a=b.responseText.evalJSON();if(a.tips_name){$("tips_name").innerHTML=a.tips_name}myDeco.editTipsTitle.hideForm()}};addLoadEvent(myDeco.editTipsTitle.init);myDeco.lightwindowPopUps={init:function(){console.log("myDeco.lightwindowPopUps.init");$$("#room-image-enlarge").invoke("observe","click",myDeco.lightwindowPopUps.roomImageMap)},roomImageMap:function(g){Event.stop(g);var c=g.findElement("a"),b=c.href.substring(c.href.indexOf("#")+1),d=$(b);if(d){var f=d.down("img").getDimensions(),a=d.down("#room-render-map");if(a){a.setStyle({width:f.width+"px",height:f.height+"px"})}myLightWindow.activateWindow({title:c.title,href:"#"+b,type:"inline",width:f.width,height:f.height})}else{myLightWindow.activateWindow({title:c.title,href:c.href,type:"image"})}}};addLoadEvent(myDeco.lightwindowPopUps.init);myDeco.newsletter={defaultValue:"Your email address",init:function(){var a=$$("#newsletter-box form").first();if(!a){return}var b=a.down('input[name="ev-EMAIL_FIELD"]');this._blur(b);b.observe("focus",this._focus.bindAsEventListener(this));b.observe("blur",this._blur.bindAsEventListener(this));a.observe("submit",this._submit.bindAsEventListener(this))},_submit:function(b){var a=b.findElement("form");if(myDeco.formValidation.validate(a)){b.stop();return}new Ajax.Request(a.getAttribute("action"),{onComplete:function(h){try{var c=h.responseText.evalJSON()}catch(i){this._error()}if(!c.success){this._error(c.message)}else{var g=a.up("#newsletter-box"),f=g.down(".initial"),j=g.down(".success"),d=j.down(".email");if(d){d.update(field.getValue())}if(j){j.show();if(f){f.hide()}else{a.hide()}}else{document.location="/the-magazine/articles/newsletter-confirmation"}}},onError:this._error.bindAsEventListener(this)})},_error:function(b){var b=b||"Unknown error is occured, please try again later";var a=$("newsletter-box").down(".error");if(a){a.update(b);a.invoke("show")}else{document.location="/the-magazine/articles/subscribe-error"}},_focus:function(b){var a=b.findElement("input");if(a.getValue()==this.defaultValue){a.value=""}a.removeClassName("blur")},_blur:function(b){var a=Object.isElement(b)?b:b.findElement("input");if(a.getValue()==""){a.value=this.defaultValue}a.addClassName("blur")}};addLoadEvent(myDeco.newsletter.init.bind(myDeco.newsletter));myDeco.findTalent={init:function(){if(!$("find-talent")){return}$("find-talent").show();myDeco.findTalent.form=new myDeco.ajaxForm("talent-finder");myDeco.findTalent.form.initForm();myDeco.findTalent.form.url=myDeco.urls.find_talent_ajax;myDeco.findTalent.form.customSuccess=function(a){$$(".find-talent.initial")[0].hide();$$(".find-talent.success")[0].show()}}};addLoadEvent(myDeco.findTalent.init);myDeco.srcHref={value:""};myDeco.formValidation={init:function(){$$("form.validate:not(.popup-form):not(.inline-form)")._each(function(a){Event.observe(a,"submit",function(b){if(!myDeco.formValidation.validate(a).valid){b.stop();myDeco.formControls.submitButtons.enable(a)}})})},validate:function(a){var c=false;var b=new Array();a.select(".validate")._each(function(f){var g=myDeco.formValidation.isValid(f);if(g===true){if(f.bubble instanceof Object){f.bubble.remove();f.bubble=""}}else{c=true;var d=myDeco.bubbles.create(g);if(f.hasClassName("right")){d.addClassName("bubble-right");d.setStyle({right:f.getWidth()+15+"px",top:"2px"})}else{d.setStyle({left:f.getWidth()+20+"px",top:"2px"})}f.insert({after:d});if(myDeco.browser.isIE6){d.appendChild(document.createTextNode(" "))}f.bubble=d}});return{valid:!c}},isValid:function(d){if(d.hasClassName("v-required")&&d.value==""){return"Please ensure each field is complete before you re-submit."}if(d.hasClassName("v-required-inbox")&&d.value==""){return"Oops! You forgot your message!"}if(d.hasClassName("v-email")&&!myDeco.formValidation.validateEmail(d.value)){return"We'd love you to bend the rules in room design, but not in our forms! Sorry, our system doesn't recognise your email address. Please check and try again."}if(d.hasClassName("v-password")&&!myDeco.formValidation.validatePassword(d.value)){return"Passwords must be 5-15 characters and may contain numbers, letters and underscores."}if(d.hasClassName("v-passwordconfirm")&&!myDeco.formValidation.validatePasswordConfirm(d.value)){return"Your passwords must match."}if(d.hasClassName("v-date")&&!myDeco.formValidation.validateDate(d.value)){return"Must be a valid date of the form dd/mm/yyyy. Eg: 19/09/2007"}if(d.hasClassName("v-url")&&!myDeco.formValidation.validateUrl(d.value)){return"Please enter a valid url."}var c="v-word-length-",b=d.className.indexOf(c);if(b!=-1){var f=d.className.indexOf(" ",b);if(f==-1){f=d.className.length}var a=d.className.substr(b+c.length,f);if(!myDeco.formValidation.validateWordLength(d.value,parseInt(a))){return"Oops! Please make sure words in your comment do not exceed "+a+" characters in length."}}if(d.hasClassName("v-no-html")&&!myDeco.formValidation.validateNoHTML(d.value)){return"Should not contain any HTML-like tags"}return true},validateEmail:function(a){return/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/.test(a)},validatePassword:function(a){return/^[a-zA-Z]\w{3,14}$/.test(a)},validatePasswordConfirm:function(a){var b=($("sign-up-password1")!=null)?"sign-up-password1":"id_password1";return $(b).value==a},validateDate:function(a){return/(((0[13578]|10|12)([-.\/])(0[1-9]|[12][0-9]|3[01])([-.\/])(\d{4}))|((0[469]|11)([-.\/])([0][1-9]|[12][0-9]|30)([-.\/])(\d{4}))|((2)([-.\/])(0[1-9]|1[0-9]|2[0-8])([-.\/])(\d{4}))|((2)(\.|-|\/)(29)([-.\/])([02468][048]00))|((2)([-.\/])(29)([-.\/])([13579][26]00))|((2)([-.\/])(29)([-.\/])([0-9][0-9][0][48]))|((2)([-.\/])(29)([-.\/])([0-9][0-9][2468][048]))|((2)([-.\/])(29)([-.\/])([0-9][0-9][13579][26])))/.test(a)},validateUrl:function(a){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(a)},validateWordLength:function(b,a){var d=b.split(" ");for(var c=0;c<d.length;c++){if(d[c].length>a){return false}}return true},validateNoHTML:function(a){return !/<[a-zA-Z]+(\s[^>]*)?>/.test(a)}};addLoadEvent(myDeco.formValidation.init);myDeco.bubbles={init:function(){$$(".bubble")._each(function(a){a.appendChild(Builder.node("div",{className:"bubble-tip"}))})},create:function(b){var a=Builder.node("div",{className:"bubble"},[Builder.node("div",{className:"rounded"},[Builder.node("p",[b])]),Builder.node("div",{className:"bubble-tip"})]);Effect.Appear(a);return a}};addLoadEvent(myDeco.bubbles.init);myDeco.tabs={};myDeco.tabs.Tab=function(a,b){this._dom=a;this._link=a.down(".cmslink");this._container=$(a.id+"-container");this.isActive=a.hasClassName("active");this._switcherId="";this.prev=null;this.next=null;this._preActivateCallback=b};myDeco.tabs.Tab.prototype={activate:function(a){if(this.isActive){return}this._dom.addClassName("active");if(!a){this._container.show()}else{new Effect.Appear(this._container,{duration:0.4,queue:{scope:this._switcherId,position:"end"}})}this.isActive=true},deactivate:function(a){if(!this.isActive){return}this._dom.removeClassName("active");if(!a){this._container.hide()}else{Effect.Queues.get(this._switcherId).each(function(b){b.cancel()});new Effect.Fade(this._container,{duration:0.1,queue:{scope:this._switcherId}})}this.isActive=false},getId:function(){return this._dom.identify()},attachHandlers:function(a,b,c){this._link.observe("click",function(f){f.stop();if(this.isActive){return}if(a){window.clearInterval(a)}this._preActivateCallback(this);this.activate(b);for(var d=0;d<c.length;d++){c[d](this)}}.bind(this));if(a){this._container.observe("mouseover",function(d){window.clearInterval(a)})}},setContent:function(a){this._container.innerHTML=a},hasContent:function(){return !this._container.innerHTML.blank()},getLink:function(){return this._link},getContainer:function(){return this._container}};myDeco.tabs.TabSwitcher=function(c,b){var a=this;this._options={use_effects:true,period:7000,endless:false,auto_switch:true};this._options=Object.extend(this._options,b);this._dom=c;this._firstTab=null;this.activeTab=null;this._navigationLinks=null;this._interval=null;if(this._options.auto_switch){this._interval=window.setInterval(this.activateNext.bind(this),this._options.period)}this._navigationLinks=this._dom.select(".tabs-navigation");this._navigationLinks.invoke("observe","click",function(h){var g=Event.findElement(h,".tabs-navigation");Event.stop(h);a._navigationLinks.invoke("removeClassName","disabled");var f=!(g.hasClassName("prev-link")?a.activatePrev():a.activateNext());if(f){g.addClassName("disabled")}});this._callbacks=[];var d=null;this._dom.select(".tab:not(.inactive)")._each(function(g){var f=new myDeco.tabs.Tab(g,function(h){a.activeTab.deactivate(a._options.use_effects);a.activeTab=h});f.attachHandlers(a._interval,a._options.use_effects,a._callbacks);f._switcherId=a.getId();if(f.isActive){a.activeTab=f}f.prev=d;if(d){d.next=f}d=f;if(!a._firstTab){a._firstTab=f}})};myDeco.tabs.TabSwitcher.prototype={activateNext:function(){if(!this._firstTab){return false}var a=true;var b=this.activeTab;if(!b.next){if(!this._options.endless){a=false;window.clearInterval(this._interval)}else{b=this._firstTab}}else{b=this.activeTab.next}if(a){this.activeTab.deactivate(this._options.use_effects);b.activate(this._options.use_effects);this.activeTab=b}return a&&b.next},activatePrev:function(){if(!this._firstTab){return false}var a=true;var b=this.activeTab;if(!b.prev){a=false;window.clearInterval(this._interval)}else{b=this.activeTab.prev}if(a){this.activeTab.deactivate(this._options.use_effects);b.activate(this._options.use_effects);this.activeTab=b}return a&&b.prev},getId:function(){return this._dom.identify()},getTabById:function(b){var a=this._firstTab;while(a){if(a.getId()==b){return a}a=a.next}return null},switchTabById:function(b){var a=this.getTabById(b);if(!a||b==this.activeTab.getId()){return}this.activeTab.deactivate(this._options.use_effects);a.activate(this._options.use_effects);this.activeTab=a},addCallback:function(a){if(a instanceof Function){this._callbacks.push(a)}}};myDeco.tabs.tabSwitcherCollection={switchers:[],init:function(b,a){if(myDeco.tabs.tabSwitcherCollection.switchers.length&&!a){return}$$(".tab-switcher")._each(function(d){var c={use_effects:!d.hasClassName("noeffect"),endless:d.hasClassName("endless"),auto_switch:!d.hasClassName("no-auto-switch")};myDeco.tabs.tabSwitcherCollection.switchers.push(new myDeco.tabs.TabSwitcher(d,c))})},getSwitcherById:function(a){if(!myDeco.tabs.tabSwitcherCollection.switchers.length){myDeco.tabs.tabSwitcherCollection.init()}return myDeco.tabs.tabSwitcherCollection.switchers.find(function(b){return b.getId()==a})}};addLoadEvent(myDeco.tabs.tabSwitcherCollection.init);if(myDeco==undefined){var myDeco={}}myDeco.tags={init:function(){try{myDeco.tags.initTags();myDeco.tags.printRoom()}catch(a){console.log("Error : tags.js : myDeco.tags.init : "+a)}},initTags:function(){var a=$("tags_form");if(a!=null&&myDeco.username!=null){a.observe("submit",myDeco.tags.addTags);myDeco.tags.updateTags(a)}},updateTags:function(){var a=$F("get_tags_url");try{new Ajax.Request(a,{method:"post",onCreate:function(){console.log("Sending tags request...")},onSuccess:function(d){var c=d.responseText.evalJSON();console.log("updateTags response: "+c.tags);myDeco.tags.updateTagsCloud(c.tags)},onFailure:function(){console.log("updateTags failed")}})}catch(b){console.log("ERROR: tags.js:"+b)}},addTags:function(d){Event.stop(d);var b=$F("post_tags_url"),a=$("tags_input"),c=d.element();if(!a.getValue().length){myDeco.formControls.submitButtons.enable(c);return false}try{new Ajax.Request(b,{method:"post",parameters:"tags="+a.getValue(),onCreate:function(){console.log("Sending add tags request...")},onSuccess:function(j){var h=j.responseText.evalJSON();var i=$("tags-error-notice");var g=$("not-tagged-message");if(h.success){a.setValue("");i.hide();myDeco.tags.updateTagsCloud(h.tags);g.hide()}else{i.style.display="inline";i.update("Error adding tags")}},onFailure:function(){console.log("addTags failed")},onComplete:function(){myDeco.formControls.submitButtons.enable(c)}})}catch(f){console.log("Error: "+f)}},updateTagsCloud:function(c){if(!c.length){return false}try{var g=String(c).split(",");var f=$("cloud-tags-ul");if(!f.visible()){f.show()}f.update();var b=$F("tag_url");for(var d=0;d<g.length;d++){var j=new Element("a",{href:String(b).replace(/TAG_NAME/,g[d])}).insert(g[d]);var a=new Element("li").insert(j);f.insert(a)}}catch(h){console.log(h)}},printRoom:function(){var a=$("print");if(a){a.observe("click",function(b){if(typeof(window.print)!="undefined"){b.stop();window.print()}})}}};addLoadEvent(myDeco.tags.init);myDeco.buynow={omniture:function(d,a,b){try{gts="GoToShop";chan=gts;if(s_account.indexOf("wl-")){chan=s_channel}var f=s_gi(s_account);f.pageName=gts+":"+s_pagename;f.channel=chan;f.prop1=gts;f.prop2=gts;f.prop3=gts;f.events="purchase";f.products=";"+a+";1;"+b;f.linkTrackVars="pageName,channel,prop1,prop2,prop3,events,products,eVar5";f.linkTrackEvents="purchase";f.tl(d,"o",gts)}catch(c){console.log("Error : buynow.js : myDeco.buynow.ominture"+c)}},clickHandler:function(d,a,c){var b=d.findElement("A");myDeco.buynow.buynowClick(b,a,c);if(b.hasClassName("external")){Event.stop(d);this.openWindow()}},buynowClick:function(b,a,c){myDeco.buynow.firePixel(b,a);myDeco.buynow.button_url=b.href;myDeco.buynow.omniture(b,a,c)},firePixel:function(a,b){var c=document.createElement("img");c.src="https://cc.gbppc.com/ct/67/x.gif?cid="+b;document.body.appendChild(c)},showBuynowLayer:function(){var b=$("buy-now-div");if(b.parentNode!=document.body){var a=b.parentNode.removeChild(b);a.style.display="";document.body.appendChild(a)}else{b.style.display=""}myDeco.buynow.currSquare=1;myDeco.buynow.updateSquares();myDeco.buynow.interval=window.setInterval(myDeco.buynow.updateSquares,800)},updateSquares:function(){if(myDeco.buynow.currSquare<4){new Effect.Morph("square"+myDeco.buynow.currSquare,{style:"background:#919622;",duration:0.6});myDeco.buynow.currSquare++}else{myDeco.buynow.sendData()}},sendData:function(){window.clearInterval(myDeco.buynow.interval);myDeco.buynow.openWindow();new Effect.Opacity("main",{duration:0.1,to:1,afterFinish:myDeco.buynow.hideBuynowLayer})},openWindow:function(){var a=window.open(myDeco.buynow.button_url,"GTSpopup");a.focus()},hideBuynowLayer:function(){for(var a=1;a<4;a++){$("square"+a).style.background="#c8c9b7"}$("buy-now-div").style.display="none"}};myDeco.happySadBar={_observers:{vote:null},init:function(){if(this._observers.vote==null){this._observers.vote=this.vote.bindAsEventListener(this)}var b={},a=this;$$("div.happy-sad-bar")._each(function(c){b[c.identify()]={ctype:c.down("input[name=content_type]").getValue(),object_id:c.down("input[name=object_id]").getValue(),rate_type:"rating"}});if(Object.keys(b).length==0){return}new Ajax.Request(myDeco.urls.canRateMulti,{parameters:{ratings:$H(b).toJSON()},onSuccess:function(c){try{b=c.responseText.evalJSON()}catch(g){return}if(!b.success){return}b=b.ratings;for(var d in b){var f=$(d);if(!b[d].canRate){f.down().addClassName("voted").select(".buttons a.button").invoke("addClassName","disabled")}f.select("a.button").invoke("observe","click",a._observers.vote)}}})},vote:function(f){f.stop();var b=f.findElement("a");if(b.hasClassName("disabled")){return}var g=b.up(".happy-sad-bar"),d=g.down("form"),a=d.down(".like_count"),c=d.down(".dislike_count"),i=parseInt(a.innerHTML),h=parseInt(c.innerHTML);if(b.hasClassName("smiley")){i++;a.update(i);d.down(".v").value="1"}else{h++;c.update(h);d.down(".v").value="-1"}new Ajax.Request(myDeco.urls.setScore,{parameters:d.serialize(),onComplete:function(k){try{var j=k.responseText.evalJSON()}catch(n){}if(!j.error){var m=i+h,l=(i*100/m).round();g.down(".loved").setStyle({width:l+"%"});g.down(".percentage").update(l+"% loved");g.down(".votes").update(m+" vote"+(m!=1?"s":""))}g.select("a.button").invoke("addClassName","disabled");g.down().addClassName("has_votes").addClassName("voted")}})}};addLoadEvent(myDeco.happySadBar.init.bind(myDeco.happySadBar));var addthis_config={username:"AlexZv"},addthis_url=location.href,addthis_title=document.title;myDeco.sharethis={init:function(){var a=$$(".addthis-link");a.invoke("observe","mouseover",function(){return addthis_open(this,"")});a.invoke("observe","mouseout",function(){addthis_close()});a.invoke("observe","click",function(b){b.stop();return addthis_sendto()})}};addLoadEvent(myDeco.sharethis.init);