Object.extend(Symbolika,{shoppingInstructions:function(A){this.element("instruct_mark")[A?"hide":"show"]();this.element("instruct")[A?"show":"hide"]()}});Object.extend(Position,{GetWindowSize:function(B){B=B?B:window;var C=B.innerWidth||(B.document.documentElement.clientWidth||B.document.body.clientWidth);var A=B.innerHeight||(B.document.documentElement.clientHeight||B.document.body.clientHeight);return[C,A]},Center:function(C,F){C=$(C);var B,E,D,H;var G=C.getDimensions();B=G.width;E=G.height;Position.prepare();if(!F){var A=Position.GetWindowSize();D=A[0];H=A[1]}else{D=F.offsetWidth;H=F.offsetHeight}C.setStyle({top:(H/2)-(E/2)-Position.deltaY+"px",left:(D/2)-(B/2)-Position.deltaX+"px"})}});Event.addBehavior({"#shopping_instructions:mouseover":function(){Symbolika.shoppingInstructions(true)},"#shopping_instructions:mouseout, #instruct_close:click":function(A){Symbolika.shoppingInstructions(false);return false},"#gallery_flow":function(){var A=new ImageFlow();A.init({ImageFlowID:this.id,slider:false,captions:false,reflections:false,reflectionP:0,onClick:Prototype.emptyFunction})}});var Basket={plus_padding:4,add:function(D){var B=D.id.replace(/^add_/,"");var E=Products.selected("quantity",B);var C=Products.selected("size",B);var A=Products.selected("color",B);new Ajax.Request("/shop/basket/add/"+B+"/"+C+"/"+A+"/"+E,{onLoading:function(){this.Loader.show()}.bind(this),onComplete:function(){this.Loader.hide()}.bind(this)})},afterAdd:function(C,D,A,E){Products.modifyQuantity(C,D,A,-E);if(!$("sumup").visible()){new Effect.Appear("sumup",{queue:"end"});this.Instructions.empty().hide();new Effect.Appear(this.Instructions.full(),{queue:"end"})}else{new Symbolika.Highlight("basket_sum",{queue:"end"})}var B=$($("basket_items").lastChild);this.Scroller.modify("right",this.actualWidth(B))},remove:function(C,A){C=$(C);var D=this.plus(C);var B=A.split("/")[0];new Ajax.Request("/shop/basket/remove/"+A,{onLoading:function(){this.Loader.show()}.bind(this),onComplete:function(){this.Loader.hide();new Effect.Fade(C,{queue:"end",afterFinish:function(){var E=this.actualWidth(C);if(C.parentNode){C.remove()}this.Scroller.modify("left",E);this.removeSum();this.Title.hide()}.bind(this)});if(D){new Effect.Fade(D,{queue:"end",afterFinish:function(){if(D.parentNode){D.remove()}}})}}.bind(this)})},afterRemove:function(B,C,A,D){Chooser.enable(B);Products.modifyQuantity(B,C,A,D)},actualWidth:function(A){var C=this.plus(A);var B=A.getWidth();if(C){B+=C.getWidth()+this.plus_padding}return B},removeSum:function(B){var A=$("basket_items");if(this.totalElements()==0){if(B){$("sumup").hide();this.Instructions.full().hide();this.Instructions.empty().show()}else{new Effect.Fade("sumup",{queue:"end"});new Effect.Fade(this.Instructions.full(),{queue:"end"});new Effect.Appear(this.Instructions.empty(),{queue:"end"})}}},clear:function(){new Ajax.Request("/shop/basket/clear",{onLoading:function(){this.Loader.show()}.bind(this),onComplete:function(){this.Loader.hide();var A=$("basket_items");new Effect.Fade(A,{queue:"end",afterFinish:function(){A.update("");this.removeSum();new Effect.Appear(A,{queue:"end"});this.Scroller.reset();this.Scroller.toggleArrows()}.bind(this)})}.bind(this)})},totalElements:function(){return $$("#basket_items li.item").length},isPlus:function(A){return A&&"className" in A&&$(A).hasClassName("plus")},plus:function(C){var B=Object.extend({left:true,right:true},arguments[1]||{});var A={left:"previous",right:"next"};var D=[];["left","right"].each(function(E){if(B[E]){D.push(C[A[E]+"Sibling"])}});if(D.length>0){return $(D.detect(function(E,F){E=$(E);if(E&&"className" in E){return E.hasClassName("plus")}}))}return null},Loader:{_element:null,now_loading:[],show:function(){this.now_loading.push("");this.element().show()},hide:function(){this.now_loading.pop();if(this.now_loading.length==0){this.element().hide()}},element:function(){if(!this._element){this._element=$($("basket_loading").firstChild)}return this._element}},Title:{_element:null,show:function(A){this.element().update(A||"")},hide:function(){this.show("")},element:function(){if(!this._element){this._element=$("basket_title")}return this._element}},Instructions:{empty:function(){return Symbolika.element("empty_instructions")},full:function(){return Symbolika.element("basket_instructions")}}};Event.addBehavior({"#basket_items > li:dblclick":function(B){var A=Chooser.identify(this.id);Basket.remove(this,[A.product_id,A.size_id,A.color_id,A.quantity].join("/"));return false},"#basket_items > li:mouseover":function(A){Basket.Title.show(this.title);return false},"#basket_items > li:mouseout, #basket_items > li:mouseup":function(A){Basket.Title.hide();return false},"#clear_basket:click":function(A){Basket.clear();return false},"#basket_scroll_left:click, #basket_scroll_right:click":function(A){Symbolika.image_on(this)},"#basket_scroll_left:mouseout, #basket_scroll_right:mouseout":function(A){Symbolika.image_off(this)},"#basket_scroll_left:mousedown, #basket_scroll_right:mousedown":function(A){Basket.Scroller.start(this)},"#basket_scroll_left:mouseup, #basket_scroll_right:mouseup":function(A){Basket.Scroller.stop()}});Basket.Scroller={interval:null,speed:10,count:0,dir:null,start:function(A){if(A){this.stop();this.dir=A.src.match(/arrow_([^_]+)/)[1];this.interval=setInterval(function(){this._scroll()}.bind(this),this.speed)}},stop:function(){if(this.interval){clearInterval(this.interval)}this.interval=null},modify:function(D,B){var C,G;if(D=="left"){C=-1;G="Right"}else{C=1;G="Left"}var F=this.element();if(this.count>0){var E=(F.scrollLeft/F.offsetWidth)*100;var A=Math.round(this.count/E);var I=Math.round((E*B)/100);var H=A*I;if(I&&H>0){this.count+=H*(this.dir=="left"?-1:1)}}if(this["canScroll"+D.capitalize()]()){if(F.scrollLeft>0){F.scrollLeft+=B*C}}if(F.scrollLeft<=0){this.reset()}else{if(this.count>=100){F.scrollLeft=F.getWidth();this.count=100}}this.toggleArrows()},reset:function(){this.element().scrollLeft=0;this.count=0},toggleArrows:function(){var A={left:this.canScrollLeft(),right:this.canScrollRight()};["left","right"].each(function(B,C){Symbolika.element("basket_scroll_"+B)[A[B]?"show":"hide"]()})},canScrollRight:function(){var A=this.element();var C=A.scrollWidth;var B=A.scrollLeft+A.getWidth();return C>0&&C>B},canScrollLeft:function(){return this.element().scrollLeft>0},_scroll:function(){this.count+=(this.dir=="left"?-1:1);var A=Symbolika.element("basket_scroll_right");var B=Symbolika.element("basket_scroll_left");if(this.count>0){if(this.count>=100){this.count=100;A.hide();this.stop()}else{if(!A.visible()&&this.canScrollRight()){A.show()}}if(!B.visible()){B.show()}}else{if(this.count<=0){this.count=0;B.hide();this.stop()}else{if(!B.visible()&&this.canScrollLeft()){B.show()}}if(!A.visible()){A.show()}}this.element().scrollLeft=Math.round(this.count/100*(this.element().scrollWidth-this.element().offsetWidth))},element:function(){return Symbolika.element("items_cont")}};var Flipper={add:function(C,A,B){this[C]=new this.Base(C,A,B)}};Flipper.Base=Class.create({initialize:function(A,B,C){this.base_id=A;this.el=$("flip_"+A);this.img=$("flipimage_"+A);this.img_cont=$(this.img.parentNode);this.view_cont=$("product_view_name_"+A);this.product_cont=$("product_name_"+A);this.views=B;this.total_views=this.views.length;this.current_view=C||0;this.el.observe("click",function(){this.flip()}.bind(this));return this},flip:function(){Basket.Loader.show();var A=arguments[0]||"out";if((effect=this._hasEffect(A))){this[A+"Effect"](effect)}else{this.inStatic()}return false},inStatic:function(){this._incrementView();this._changeSrc()},inEffect:function(A){this._incrementView();this._changeSrc(A)},outEffect:function(A){this._doEffect(A,{to:0.01,afterFinish:function(){this.flip("in")}.bind(this)})},reload:function(){Basket.Loader.show();this._changeSrc()},_doEffect:function(B){var A=Object.extend({},arguments[1]||{});new Effect[B](this.img,A)},_changeSrc:function(C){var B=this.views[this.current_view].size.split("x");var A=new Image();A.src=this.views[this.current_view].url;this.img_cont.setStyle({width:B[0]+"px",height:B[1]+"px"});this.img.src=A.src;if(!this.img.complete){this.img.onload=function(){this._onload(C)}.bind(this)}else{this._onload(C)}this.view_cont.update(this.views[this.current_view].name);if(this.views[this.current_view].design){this.product_cont.update(this.views[this.current_view].design.name)}ProductTitles[this.base_id]=this.views[this.current_view].name},_hasEffect:function(B){var A="effect_"+B;return A in this.views[this.current_view]&&this.views[this.current_view][A] in Effect?this.views[this.current_view][A]:false},_incrementView:function(){this.current_view++;if(this.current_view==this.total_views){this.current_view=0}},_onload:function(A){Basket.Loader.hide();if(A){this._doEffect(A)}}});var Enlarger={COLOR_REGEXP:/(^.*\/assets\/product_images\/show\/\d+\/[^\/]+\/[^\/]+\/)([^\/]+)(\/[^\/]+\/image\.jpg)$/,_each:function(B){for(var A in Enlarger){var C=Enlarger[A];if((A&&(A=="_each"||A=="Methods"))||(C&&(C==Enumerable[A]||C==Enlarger.Methods[A]))){continue}var D=[A,C];D.key=A;D.value=C;B(D)}}};Enlarger.Methods={add:function(B,A){this[B]=A},get_current_color:function(A){return $("flipimage_"+A).getAttribute("src").replace(this.COLOR_REGEXP,"$2")},get_images:function(D){var B=[];var E=this.get_current_color(D);for(var C=0,A=this[D].length;C<A;C++){B[C]=this[D][C];B[C][0]=B[C][0].replace(this.COLOR_REGEXP,"$1"+E+"$3")}return B},start:function(A){myLightbox.start(this.get_images(A))}};Object.extend(Enlarger,Enlarger.Methods);Object.extend(Enlarger,Enumerable);var ProductTitles={};var Products={selected_elements:{},design_carousel:{}};Object.extend(Products,Enumerable);Products.Methods={add:function(C,B){C=$(C);if(C){var A=C.id.replace(/^chooser_/,"");this[A]=B}},chooserOn:function(C){var D=C.id.match(/^([^_]+)_chooser_(\d+)/);var B=D[1];var A=D[2];if(!Chooser.disabled(A)){$(B+"_list_"+A).show()}},chooserOff:function(C){var D=C.id.match(/^([^_]+)_chooser_(\d+)/);var B=D[1];var A=D[2];if(!Chooser.disabled(A)){$(B+"_list_"+A).hide()}},removeAll:function(){this.each(function(A){delete (this[A.key])}.bind(this))},changeViewTitle:function(B,C){var A=$("product_view_name_"+B);if(!(B in ProductTitles)){ProductTitles[B]=A.firstChild.data}A.update(C||ProductTitles[B])},_each:function(B){for(var A in Products){var C=Products[A];if((A&&(A=="_each"||A=="Methods"))||(C&&(C==Enumerable[A]||C==Products.Methods[A]))){continue}var D=[A,C];D.key=A;D.value=C;B(D)}},modifyQuantity:function(B,C,A,D){if(B in this){this[B][C].colors[A]+=D;this[B][C].quantity+=D;this[B].quantity+=D;if(this[B][C].colors[A]<0){this[B][C].colors[A]=0}if(this[B][C].quantity<0){this[B][C].quantity=0}if(this[B].quantity<0){this[B].quantity=0}Chooser.Reload.quantity(B,C,A)}},selected:function(C,A,B){if(B!==null&&B!==undefined){if(!(A in this.selected_elements)){this.selected_elements[A]={}}this.selected_elements[A][C]=B}if(A in this.selected_elements){return this.selected_elements[A][C]}return null},selectTag:function(A){Symbolika.element("price_tag_"+A).addClassName("selected")},unselectTag:function(A){var B=Symbolika.element("price_tag_"+A);if(B){B.removeClassName("selected")}},showDesignExplain:function(C){Products.hideDesignExplain();var B=Chooser.identify(C.id);var F=Flipper[B.product_id];var E=$("design_explain_"+B.product_id);if(E){var D=$("flip_design_"+B.product_id);var A=$("pvdp_"+B.product_id+"_"+F.views[F.current_view].id);DesignExplain.showDesignExplain(E,$("design_carousel_"+B.product_id),$$("#design_carousel_"+B.product_id+" div.contents"),D?[D]:null,{},{moveTo:A?[this,A]:null})}},hideDesignExplain:function(){DesignExplain.hideDesignExplain()}};Object.extend(Products,Products.Methods);var Chooser={showingName:null,disable:function(A){var B=$("chooser_"+A);var C=document.createElement("div");C.className="disabled_chooser";C.id="disabled_chooser_"+A;C.appendChild(document.createTextNode("no more available items."));B.appendChild(C)},enable:function(A){var B=$("disabled_chooser_"+A);if(B){B.remove()}},disabled:function(A){return $("disabled_chooser_"+A)},identify:function(B){var A=B.split("_");return{type:A[0],product_id:A[1],size_id:A[2]||0,color_id:A[3]|0,quantity:A[4]||0}},_idFromClass:function(B,A){return B.className.replace(new RegExp("^.*"+A+"\\s+(\\d+).*$"),"$1")}};Chooser.Effects={size:$H({mouseover:function(A){this.setStyle({backgroundColor:"rgb(217,207,198)"})},mouseout:function(A){this.setStyle({backgroundColor:"rgb(255,255,255)"})}}),quantity:$H({mouseover:function(A){this.setStyle({color:"rgb(148, 141, 136)",textDecoration:"none"})},mouseout:function(A){this.setStyle({color:"rgb(0,0,0)",textDecoration:"underline"})}})};Chooser.Responders={current_holders:{},current_chooser:{color:{},quantity:{}},current_id:{size:{},color:{}},quantity:function(D,A){if($(D).hasClassName("disabled")){return false}var C=$("selected_quantity_"+A);var B=C.getElementsByTagName("span")[0];var E=D.firstChild.data;C.firstChild.data=E;Products.selected("quantity",A,E)},size:function(B,E,C,J){B=$(B);if(!B||B.hasClassName("disabled")){return false}var D=$("selected_size_"+E);D.firstChild.data=Symbolika.Sizes[C].abbr;Products.selected("size",E,C);var I=this.getCurrentChooser("color",E);I.hide();this.current_chooser.color[E]=$("color_chooser_"+E+"_"+C);this.current_chooser.color[E].show();this.current_id.size[E]=C;if(!J||!(J in Products[E][C].colors)||Products[E][C].colors[J]==0){var A=this.current_chooser.color[E].getElementsByTagName("li");for(var F=0,G=A.length;F<G;F++){var H=$(A[F]);if(!H.hasClassName("disabled")){this.color(H,E,C,Chooser._idFromClass(H,"color"),true);break}}}},color:function(E,B,D,A,F){E=$(E);if(!E||E.hasClassName("disabled")){return false}if(!F){new Symbolika.Highlight(E)}this.current_id.color[B]=A;var G=this.getCurrentChooser("quantity",B);G.hide();this.current_chooser.quantity[B]=$("quantity_chooser_"+B+"_"+D+"_"+this.current_id.color[B]);this.current_chooser.quantity[B].show();if(G!=this.current_chooser.quantity[B]){var H=Symbolika.Colors[A].name.replace(/\s+/,"_");if(B in Flipper&&Flipper[B].views){Flipper[B].views.each(function(I){I.url=I.url.replace(/[^\/]+(\/[^\/]+\/image\.[a-z]{3,4})$/,H+"$1")});Flipper[B].reload()}}var C=$("selected_color_"+B);Products.selected("color",B,A);$(C.firstChild).setStyle({backgroundColor:"rgb("+Symbolika.Colors[A].rgb+")"});Chooser.Responders.quantity(this.current_chooser.quantity[B].getElementsByTagName("li")[0],B)},getCurrentChooser:function(E,D){if(!this.current_chooser[E][D]){var B=$(E+"_list_"+D).getElementsByTagName("ul");for(var C=0,A=B.length;C<A;C++){this.current_chooser[E][D]=$(B[C]);if(this.current_chooser[E][D].visible()){break}}}return this.current_chooser[E][D]},_getSizeId:function(A){return A.parentNode.id.split("_")[3]}};Chooser.Actions={showItemName:function(B,C){var A=this._getTitleSpan(B);this._old_name=A.firstChild.data;A.firstChild.data=!Element.hasClassName(B,"disabled")?(C||B.title):"out of stock"},removeItemName:function(B){var A=this._getTitleSpan(B);A.firstChild.data=this._old_name},_getTitleSpan:function(A){var B=A.parentNode.parentNode;return B.getElementsByTagName("span")[0]}};Chooser.Reload={quantity:function(E,B,J){var K=$("quantity_chooser_"+E+"_"+B+"_"+J);var C=Products[E][B].colors[J];var L=K.getElementsByTagName("li");var A=null;for(var F=0,G=L.length;F<G;F++){var I=$(L[F]);var H=I.firstChild.data;var D=(Products[E][B].colors[J]==0||Products[E][B].colors[J]<H);I[(D?"add":"remove")+"ClassName"]("disabled");if(!D){A=A||I}}if(A){Chooser.Responders.quantity(A,E,B,J,A.firstChild.data)}this.color(E,B,J)},color:function(D,E,B){var C=$$("ul#color_chooser_"+D+"_"+E+" li.color."+B);if(C!==null&&(C=C[0])){if(Products[D][E].colors[B]>0){C.removeClassName("disabled").setStyle({backgroundColor:"rgb("+Symbolika.Colors[B].rgb+")"});Chooser.Responders.color(C,D,E,B,true)}else{if(Products[D][E].colors[B]==0){C.addClassName("disabled").setStyle({backgroundColor:""});var A=this._getNextElement(C);if(A){Chooser.Responders.color(A,D,E,Chooser._idFromClass(A,"color"),true)}}}this.size(D,E,B)}},size:function(C,D,A){var E=$$("ul#size_chooser_list_"+C+" li.size."+D);if(E!==null&&(E=E[0])){if(Products[C][D].quantity==0){E.addClassName("disabled");var B=this._getNextElement(E);if(B===null){Chooser.disable(C)}else{Chooser.Responders.size(B,C,Chooser._idFromClass(B,"size"))}}else{E.removeClassName("disabled");Chooser.Responders.size(E,C,D,A)}}},_getNextElement:function(C){var D=$(C).siblings();for(var B=0,A=D.length;B<A;B++){if(!D[B].hasClassName("disabled")){return D[B]}}return null}};Event.addBehavior({"div.chooser.disabled":function(){var A=Chooser.identify(this.id);Chooser.disable(A.product_id)},".chooser_list.sizes > li:mouseover, .chooser_list.colors > li:mouseover, .chooser_list.quantity > li:mouseover":function(A){Chooser.Actions.showItemName(this);return false},".chooser_list.sizes > li:mouseout, .chooser_list.colors > li:mouseout, .chooser_list.quantity > li:mouseout":function(A){Chooser.Actions.removeItemName(this);return false},".chooser_list.sizes > li:click":function(B){var A=Chooser.identify(this.id);Chooser.Responders.size(this,A.product_id,A.size_id);return false},".chooser_list.colors > li:click":function(B){var A=Chooser.identify(this.id);Chooser.Responders.color(this,A.product_id,A.size_id,A.color_id);return false},".chooser_list.quantity > li:click":function(B){var A=Chooser.identify(this.id);Chooser.Responders.quantity(this,A.product_id,A.size_id,A.color_id,A.quantity);return false},".add_to_cart img.add:mouseover":function(A){Symbolika.image_on(this);$(this.nextSibling).show();return false},".add_to_cart img.add:mouseout":function(A){Symbolika.image_off(this);$(this.nextSibling).hide();return false},".add_to_cart img.add:click":function(A){Basket.add(this);return false},"li.eye:click":function(C){var B=Chooser.identify(this.id);var A=B.size_id;if(!this.hasClassName("disabled")&&A){Symbolika.openLightbox(A)}},"li.eye:mouseover, li.magnify:mouseover, li.flip:mouseover":function(B){if(!this.hasClassName("disabled")){var A=Chooser.identify(this.id);Products.changeViewTitle(A.product_id,this.title)}},"li.eye:mouseout, li.magnify:mouseout, li.flip:mouseout":function(B){if(!this.hasClassName("disabled")){var A=Chooser.identify(this.id);Products.changeViewTitle(A.product_id,"")}},"li.magnify:click, li.product div.image img:click":function(B){if(!this.hasClassName("disabled")){var A=Chooser.identify(this.id);Enlarger.start(A.product_id)}},"li.product div.about_print:click":function(){Products.showDesignExplain(this)},".design_explain a[rel=close]:click, .design_explain .bg:click":function(){Products.hideDesignExplain();return false}});$(document).observe("dom:loaded",function(){if($("footer").visible()){Basket.Scroller.toggleArrows()}});Carousel=Class.create(Abstract,{initialize:function(E,F,H,G){this.scrolling=false;this.scroller=E;this.slides=F;this.controls=H;this.options=Object.extend({duration:1,frequency:3,controlClassName:"carousel-control",jumperClassName:"carousel-jumper"},G||{});this.slides.each(function(B,A){B._index=A});if(this.controls){this.controls.invoke("observe","click",this.click.bind(this))}if(this.options.auto){this.start();this.slides.invoke("observe","mouseover",this.pause.bind(this));this.slides.invoke("observe","mouseout",this.resume.bind(this))}},click:function(event){this.stop();var element=event.findElement("a");if(!element.hasClassName("disabled")){this.deactivateControls();if(element.hasClassName(this.options.controlClassName)){eval("this."+element.rel+"()")}else{if(element.hasClassName(this.options.jumperClassName)){this.moveTo(element,element.rel)}}}event.stop()},moveTo:function(H,G){if(this.options.beforeMove&&(typeof this.options.beforeMove=="function")){this.options.beforeMove()}if(this.controls&&this.options.selectedClassName){this.controls.each((function(A){A.removeClassName(this.options.selectedClassName)}).bind(this));H.addClassName(this.options.selectedClassName)}this.previous=this.current?this.current:this.slides[0];this.current=$(G);var F=this.scroller.cumulativeOffset();var E=this.current.cumulativeOffset();if(this.scrolling){this.scrolling.cancel()}this.scrolling=new Effect.SmoothScroll(this.scroller,{duration:this.options.duration,x:(E[0]-F[0]),y:(E[1]-F[1]),queue:{position:"end",limit:1,scope:this.scroller.id},afterFinish:(function(){if(this.options.afterMove&&(typeof this.options.afterMove=="function")){this.options.afterMove()}if(this.controls){this.activateControls()}}).bind(this)});return false},prev:function(){if(this.current){var C=this.current._index;var D=(C==0)?this.slides.length-1:C-1}else{var D=this.slides.length-1}this.moveTo(this.controls?this.controls[D]:false,this.slides[D])},next:function(){if(this.current){var D=this.current._index;var C=(this.slides.length-1==D)?0:D+1}else{var C=1}this.moveTo(this.controls?this.controls[C]:false,this.slides[C])},first:function(){var D=0;if(this.current){var C=this.current._index}this.moveTo(this.controls[D],this.slides[D])},last:function(){var D=(this.slides.length-1);if(this.current){var C=this.current._index}this.moveTo(this.controls[D],this.slides[D])},toggle:function(){if(this.previous){this.moveTo(this.controls[this.previous._index],this.slides[this.previous._index])}else{return false}},stop:function(){clearTimeout(this.timer)},start:function(){this.periodicallyUpdate()},pause:function(B){this.stop();this.activateControls()},resume:function(C){if(C){var D=C.relatedTarget||C.toElement;if(!D||(!this.slides.include(D)&&!this.slides.any(function(A){return D.descendantOf(A)}))){this.start()}}else{this.start()}},periodicallyUpdate:function(){if(this.timer!=null){clearTimeout(this.timer);this.next()}this.timer=setTimeout(this.periodicallyUpdate.bind(this),this.options.frequency*1000)},deactivateControls:function(){this.controls.invoke("addClassName","disabled")},activateControls:function(){this.controls.invoke("removeClassName","disabled")}});Effect.SmoothScroll=Class.create();Object.extend(Object.extend(Effect.SmoothScroll.prototype,Effect.Base.prototype),{initialize:function(D){this.element=$(D);var C=Object.extend({x:0,y:0,mode:"absolute"},arguments[1]||{});this.start(C)},setup:function(){if(this.options.continuous&&!this.element._ext){this.element.cleanWhitespace();this.element._ext=true;this.element.appendChild(this.element.firstChild)}this.originalLeft=this.element.scrollLeft;this.originalTop=this.element.scrollTop;if(this.options.mode=="absolute"){this.options.x-=this.originalLeft;this.options.y-=this.originalTop}},update:function(B){this.element.scrollLeft=this.options.x*B+this.originalLeft;this.element.scrollTop=this.options.y*B+this.originalTop}});var DesignExplain={_carousels:{},centerDesignExplain:function(){var A=DesignExplain.showingDesignExplain();if(A){A.down(".explain_wrap").center(A)}},setup:function(E,A,D,B,C){E=$(E);if(E){if(!DesignExplain._carousels[E.id]){DesignExplain._carousels[E.id]=new Carousel(A,D,B,C)}return DesignExplain._carousels[E.id]}return false},showDesignExplain:function(E,A,D,B,C,G){E=$(E);G=G||{};var F=DesignExplain.setup(E,A,D,B,C);if(F){return DesignExplain.show(E,G)}return false},show:function(C){options=arguments[1]||{};var D=DesignExplain._carousels[C.id];var A=options.beforeStart||Prototype.emptyFunction;var B=options.afterFinish||Prototype.emptyFunction;C.addClassName("showing").appear(Object.extend(options,{beforeStart:function(){var F=C.style;var H=F.visibility;var G=F.position;var E=F.display;F.visibility="hidden";F.position="absolute";F.display="block";var I=C.down(".explain_wrap");I.center(C);F.display=E;F.position=G;F.visibility=H;A()},afterFinish:function(){if(options.moveTo){var E,F;if(Object.isArray(options.moveTo)){E=options.moveTo[0];F=options.moveTo[1]}else{E=options.moveTo;F=options.moveTo.rel}D.moveTo(E,F)}B()}}));window.onresize=DesignExplain.centerDesignExplain;return D},carouselFor:function(A){return DesignExplain._carousels[A.id]||null},hideDesignExplain:function(){var A=DesignExplain.showingDesignExplain();if(A){window.onresize=Prototype.emptyFunction;A.fade().removeClassName("showing");return true}return false},showingDesignExplain:function(){var A=$$(".design_explain.showing");return A&&A[0]?A[0]:null}}
