/*
	Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/

/*
	This is an optimized version of Dojo, built for deployment and not for
	development. To get sources and documentation, please visit:

		http://dojotoolkit.org
*/

dojo.provide("agi.layers.shop");if(!dojo._hasResource["agi.widget.Tabber"]){dojo._hasResource["agi.widget.Tabber"]=true;dojo.provide("agi.widget.Tabber");dojo.declare("agi.widget.Tabber",[agi.classes.Identified],{openTab:null,tabs:null,buttons:null,node:null,classBase:"",openClass:"",ANIMATION_DURATION:250,HIDE_STYLE:{display:"none"},SHOW_STYLE:{display:"block",opacity:0},BUTTON_STYLE:{cursor:"pointer"},OPEN_CLASS_SUFFIX:"-open-tab",TAB_SUFFIX:"-content",BUTTON_SUFFIX:"-button",constructor:function(_1){dojo.mixin(this,_1);this.node=dojo.byId(this.node);this.openClass=this.classBase+this.OPEN_CLASS_SUFFIX;this._getTabs();this._getButtons();},_getTabs:function(){var _2=this.classBase+this.TAB_SUFFIX;this.tabs=dojo.query("."+_2,this.node);dojo.forEach(this.tabs,function(_3){if(dojo.style(_3).display!="none"){this.openTab=_3;}},this);},_getButtons:function(){var _4=this.classBase+this.BUTTON_SUFFIX;this.buttons=dojo.query("."+_4,this.node);dojo.forEach(this.buttons,function(b){dojo.style(b,this.BUTTON_STYLE);dojo.connect(b,"onclick",dojo.hitch(this,this.show));},this);},show:function(_5){var _6=_5.target.className.replace(/\D/g,"")*1;this.showIdx(_6);},showNext:function(){var _7=dojo.indexOf(this.tabs,this.openTab)+1;_7=Math.min(_7,this.tabs.length-1);this.showIdx(_7);},showPrevious:function(){var _8=dojo.indexOf(this.tabs,this.openTab)-1;_8=Math.max(_8,0);this.showIdx();},showIdx:function(_9){var _a=this.openClass;if(_9!=dojo.indexOf(this.tabs,this.openTab)){dojo.forEach(this.buttons,function(b){dojo.removeClass(b,_a);},this);dojo.addClass(this.buttons[_9],_a);dojo.publish("agi/widget/tabber/tab-changed",[this,this.openTab,this.tabs[_9]]);this._fadeOut(this.openTab,this.tabs[_9]);return true;}return false;},_postFade:function(_b,_c){dojo.style(_b,this.HIDE_STYLE);dojo.style(_c,this.SHOW_STYLE);this._fadeIn(_c);dojo.publish("agi/widget/tabber/fade-complete",[this,_b,_c]);},_fadeOut:function(_d,_e){var _f={node:_d,duration:this.ANIMATION_DURATION,onEnd:dojo.hitch(this,function(){this._postFade(_d,_e);})};dojo.fadeOut(_f).play();},_fadeIn:function(_10){args={node:_10,duration:this.ANIMATION_DURATION};dojo.fadeIn(args).play();this.openTab=_10;}});}if(!dojo._hasResource["agi.util.selection"]){dojo._hasResource["agi.util.selection"]=true;dojo.provide("agi.util.selection");agi.util.selection={get_cursor_position:function(_11){return this.get_end(_11);},length:function(_12){_12=dojo.byId(_12);_12.focus();if(_12.createTextRange){return document.selection.createRange().text.length;}else{return _12.selectionEnd-_12.selectionStart;}},get_start:function(_13){_13=dojo.byId(_13);_13.focus();if(_13.createTextRange){var _14=document.selection.createRange().text.length;var end=agi.util.selection.get_end(_13);return end-_14;}else{return _13.selectionStart;}},get_end:function(_15){_15=dojo.byId(_15);_15.focus();if(_15.createTextRange){var r=document.selection.createRange().duplicate();r.moveStart("character",-_15.value.length);return r.text.length;}else{return _15.selectionEnd;}},set:function(_16,_17,end){var _16=dojo.byId(_16);if(!dojo.isIE){_16.setSelectionRange(_17,end);}else{var _18=_16.createTextRange();_18.collapse(true);_18.moveStart("character",_17);_18.moveEnd("character",end-_17);_18.select();}}};}if(!dojo._hasResource["agi.widget.AutoComplete"]){dojo._hasResource["agi.widget.AutoComplete"]=true;dojo.provide("agi.widget.AutoComplete");dojo.declare("agi.widget.AutoComplete",[agi.classes.Identified],{node:null,url:null,suggestions:null,input_text:null,search_text:null,cursor:-1,min_len:0,selected_index:-1,open:false,multiple:true,class_name:imgbase+"-auto-complete",class_selected:imgbase+"-auto-complete-selected",popup:null,iframe:null,deferred:null,cursor_position:0,view_limit:10,constructor:function(_19,url,_1a){if(typeof _1a!="undefined"){this.multiple=_1a;}this.node=dojo.byId(_19);dojo.attr(this.node,"autocomplete","off");this.create();this.url=url;this.suggestions=[];this.wire(this.node);},is_open:function(){return this.open;},create:function(){var _1b=this.node.id+"-auto-complete-list";this.popup=dojo.create("UL",{id:_1b,className:this.class_name},dojo.body());dojo.style(this.popup,{display:"none"});dojo.connect(this.popup,"onmouseover",this,this.list_onmouseover);dojo.connect(this.popup,"onclick",this,this.list_onclick);if(dojo.isIE){this.create_iframe();}},create_iframe:function(){var _1c=this.node.id+"-auto-complete-iframe";this.iframe=dojo.create("IFRAME",{id:_1c},dojo.body());dojo.style(this.iframe,{display:"none",position:"absolute",border:"none",margin:0,padding:0});dojo.style(this.iframe,{zIndex:dojo.style(this.popup).zIndex-1});},show:function(){this.selected_index=-1;var _1d=dojo.coords(this.node,true);dojo.style(this.popup,{visibility:"hidden",display:"block",left:_1d.x+"px",top:(_1d.y+_1d.h)+"px"});this.popup.scrollTop=0;var lis=dojo.query("li",this.popup);if(lis.length>this.view_limit){lineHeight=dojo.coords(lis[0],true).h;divHeight=lineHeight*this.view_limit;dojo.style(this.popup,{height:divHeight+"px",overflow:"auto",overflowX:"hidden"});}else{dojo.style(this.popup,{height:"auto",overflow:"auto"});}this.make_visible();if(dojo.isIE){this.show_iframe();}this.open=true;},show_iframe:function(){var _1e=dojo.coords(this.popup,true);dojo.style(this.iframe,{width:_1e.w+"px",height:_1e.h+"px",top:_1e.t,left:_1e.l,display:"block",background:"#FFFFFF"});},make_visible:function(){var _1f=dojo.coords(this.node,true);var _20=dojo.coords(this.popup,true);var _21=dijit.getViewport();var _22=_20.t+_20.h;var _23=_21.t+_21.h;if(_22>_23){dojo.style(this.popup,{top:(_1f.y-_20.h)+"px"});}dojo.style(this.popup,{visibility:"visible"});},cancel:function(){if(this.deferred!=null){this.deferred.cancel();}},hide:function(evt){if(typeof evt!="undefined"){var ids=[this.node.id,this.popup.id];var _24=dojo.query("li",this.popup);_24.forEach(function(_25){ids.push(_25.id);});if(!this.is_open()){this.cancel();}else{if(dojo.indexOf(ids,evt.target.id)>-1){return;}}}this.cancel();this.selected_index=-1;if(dojo.isIE){this.hide_iframe();}dojo.style(this.popup,{display:"none"});this.open=false;},hide_iframe:function(){dojo.style(this.iframe,{display:"none"});},stop_event:function(evt){if(this.is_open()){dojo.stopEvent(evt);}},onkeypress:function(evt){switch(evt.keyCode){case dojo.keys.TAB:case dojo.keys.UP_ARROW:case dojo.keys.DOWN_ARROW:case dojo.keys.ENTER:case dojo.keys.ESC:this.stop_event(evt);default:return true;}},onkeyup:function(evt){this.cursor_position=agi.util.selection.get_end(this.node);switch(evt.keyCode){case dojo.keys.TAB:case dojo.keys.ESC:case dojo.keys.UP_ARROW:case dojo.keys.DOWN_ARROW:this.stop_event(evt);case dojo.keys.SHIFT:return true;default:var _26="";var _26=this.get_search_value(this.node);if(_26!=this.input_text){this.input_text=_26;if(_26.length>this.min_len){this.send_search();}else{this.hide();}}}},onkeydown:function(evt){switch(evt.keyCode){case dojo.keys.ENTER:this.use_suggestion();break;case dojo.keys.TAB:if(this.selected_index>-1){this.use_suggestion();}else{this.hide();agi.widget.focus_next_element(this.node);}break;case dojo.keys.ESC:this.stop_event(evt);this.hide();break;case dojo.keys.UP_ARROW:if(this.selected_index>0){this.selected_index--;}this.change_selection(evt.keyCode);this.stop_event(evt);break;case dojo.keys.DOWN_ARROW:if(this.selected_index<(this.suggestions.length-1)){this.selected_index++;}this.change_selection(evt.keyCode);this.stop_event(evt);break;}},wire:function(_27){this.node=_27;dojo.connect(_27,"onkeypress",this,this.onkeypress);dojo.connect(_27,"onkeydown",this,this.onkeydown);dojo.connect(_27,"onkeyup",this,this.onkeyup);dojo.connect((dojo.isIE)?document:null,"onmouseup",this,this.hide);dojo.subscribe("agi/widget/autocomplete/hide",dojo.hitch(this,this.hide));},change_selection:function(_28){if(!_28){_28="";}var lis=dojo.query("li",this.popup);if(lis.length==0){return;}var _29=dojo.marginBox(lis[0]).h;var _2a=dojo.marginBox(this.popup);var _2b=this.popup.scrollTop+_2a.h;lis.forEach(dojo.hitch(this,function(_2c,_2d,_2e){if(_2d==this.selected_index){dojo.attr(_2c,"className",this.class_selected);if(_2e.length>this.view_limit&&(_28==dojo.keys.DOWN_ARROW||_28==dojo.keys.UP_ARROW)){if(_28==dojo.keys.DOWN_ARROW){scroll_factor=_2d+1;}else{scroll_factor=_2d;}var _2f=_29*scroll_factor;if(_2f>_2b){this.popup.scrollTop=this.popup.scrollTop+_29;}else{if(_2f<this.popup.scrollTop){this.popup.scrollTop=_2f;}}}}else{dojo.attr(_2c,"className",this.class_name);}}));},list_onmouseover:function(evt){var _30=evt.target;this.selected_index=_30.id.replace(this.node.id,"").replace(/\D*/,"")*1;this.change_selection();},list_onclick:function(evt){this.use_suggestion();this.hide();dojo.stopEvent(evt);},onsearchsuccess:function(_31){var _32=this.get_search_value(this.node);if(_32!=this.search_text&&_32.length>this.min_len){this.send_search();return;}this.suggestions=_31;this.suggestions.sort();this.create_suggestions(this.search_text);if(this.suggestions.length>0){this.show();}else{this.hide();}},send_search:function(){this.search_text=this.get_search_value(this.node);var _33={q:encodeURIComponent(this.search_text)};var _34={url:this.url,handleAs:"json",load:dojo.hitch(this,this.onsearchsuccess),content:_33,preventCache:true};this.deferred=dojo.xhrGet(_34);},format_suggestion:function(_35){return dojo.toJson(_35);},apply_suggestion:function(_36){if(this.multiple){var _37=this.node.value;var _38=this.cursor_position;var _39=_38-this.get_search_value(this.node).length;var _3a=_37.substring(0,_39);var _3b=_37.substring(_38);var _3c=(_3a.search(/\s+$/g)!=-1||_3a.length==0);var _3d=(_3b.search(/^\s+/g)!=-1);var _3e=(_3c)?"":" ";var _3f=(_3d)?",":", ";var _40=_3e+_36+_3f;this.node.value=_3a+_40+_3b;this.cursor=_39+_40.length;}else{this.node.value=_36;}},get_search_value:function(_41){if(this.multiple){var _42=_41.value;var _43=this.cursor_position;var _44=[","," ",";","\n"];var idx=-1;dojo.forEach(_44,function(_45){var _46=_42.lastIndexOf(_45,_43);idx=Math.max(idx,_46);});var _47=(idx==-1)?0:idx+1;var idx=-1;dojo.forEach(_44,function(_48){var _49=_42.indexOf(_48,_43);idx=Math.max(idx,_49);});var end=(idx==-1)?_42.length-1:idx-1;return _42.substring(_47,_43).replace(/^\s*|\s*$/g,"");}else{return this.node.value;}},create_suggestions:function(_4a){dojo.query("li",this.popup).forEach(dojo.destroy);dojo.forEach(this.suggestions,dojo.hitch(this,function(_4b,_4c){var _4d=this.format_suggestion(_4b);var _4e=this.node.id+"-li-"+_4c;var _4f=(this.selected_index==_4c)?this.class_selected:this.class_name;if(_4a){fidx=_4d.toLowerCase().indexOf(_4a);_4d=_4d.substring(0,fidx)+"<b>"+_4d.substring(fidx,fidx+_4a.length)+"</b>"+_4d.substring(fidx+_4a.length);}_4d=_4d.replace(/ /g,"&nbsp;");var li=dojo.create("LI",{id:_4e,className:_4f,innerHTML:_4d},this.popup);}));},use_suggestion:function(){if(this.selected_index>-1){this.apply_suggestion(this.suggestions[this.selected_index]);this.hide();this.selected_index=-1;this.input_text="";this.search_text="";this.node.blur();setTimeout("agi.widget.focus_element('"+this.node.id+"')",10);if(this.cursor!=-1){setTimeout("agi.util.selection.set('"+this.node.id+"',"+this.cursor+","+this.cursor+")",15);}}}});agi.widget.focus_next_element=function(_50){var idx=-1;for(var i=0;i<_50.form.elements.length;i++){if(_50.form.elements[i]==_50&&i<(_50.form.elements.length-1)){idx=i;}}if(idx!=-1){_50.form.elements[idx].focus();}};agi.widget.focus_element=function(_51){try{dojo.byId(_51).focus();}catch(e){}};}if(!dojo._hasResource["agi.widget.StorageComplete"]){dojo._hasResource["agi.widget.StorageComplete"]=true;dojo.provide("agi.widget.StorageComplete");dojo.declare("agi.widget.StorageComplete",[agi.widget.AutoComplete],{require_email:true,send_search:function(){if(!agx.currentPage.controller.contacts.loaded){this.inherited(arguments);return;}this.suggestions=[];var _52=(this.get_search_value(this.node)+"").toLowerCase();if(agx.currentPage.controller.groups.loaded){for(g in agx.currentPage.groups){var _53=(agx.currentPage.groups[g].label+"").toLowerCase();if(_53.indexOf(_52)==0){this.suggestions.push(agx.currentPage.groups[g]);}}}for(i in agx.currentPage.contacts){var _54=(agx.currentPage.contacts[i].first_name+"").toLowerCase();var _55=(agx.currentPage.contacts[i].last_name+"").toLowerCase();var _56=(agx.currentPage.contacts[i].email+"").toLowerCase();var f=(_54.length>0)?_54+" ":"";var l=(_55.length>0)?_55+" ":"";var _57=f+l;if(_56.toLowerCase()==_52){this.suggestions=[];break;}if(((_56.indexOf(_52)==0||_54.indexOf(_52)==0||_55.indexOf(_52)==0)||_57.indexOf(_52)==0)&&(_56.length>0||!this.require_email)){this.suggestions.push(agx.currentPage.contacts[i]);}}this.suggestions.sort(this.compare_contacts);this.create_suggestions(_52);if(this.suggestions.length>0){this.show();}else{this.hide();}},assemble_contact:function(_58){if(!_58.label){var _59=(_58.first_name==null)?"":_58.first_name;var _5a=(_58.last_name==null)?"":_58.last_name;var _5b=(_5a.length>0&&_59.length>0)?" ":"";var _5c=(_5a.length>0||_59.length>0)?"\""+_59+_5b+_5a+"\"":"";var _5d=(_58.email==null||_58.email.length==0)?"":" <"+_58.email+">";return _5c+_5d;}else{return _58.label+" (group)";}},format_suggestion:function(_5e){return this.assemble_contact(_5e).replace("<","&#60;").replace(">","&#62;");},apply_suggestion:function(_5f){var _60="";if(!_5f.label){_60=_5f.email;}else{_60=this.get_group_emails(_5f);}this.inherited(arguments,[_60]);},get_contact:function(id){for(var c in agx.currentPage.contacts){var _61=agx.currentPage.contacts[c];_61.id=_61.id+"";if(_61.id==id||_61.id.startswith(id+"-")){return _61;}}return {};},get_group_emails:function(_62){var _63="";for(i=0;i<_62.contacts.length;i++){var _64=_62.contacts[i];var _65=this.get_contact(_64).email;if(typeof _65!="undefined"&&_65.length>0){if(_63.length>0){_63+=", "+_65;}else{_63+=_65;}}}return _63;},compare_contacts:function(a,b){if(!a.label){var _66=a.last_name+a.first_name+a.email;}else{var _66=a.label;}if(!b.label){var _67=b.last_name+b.first_name+b.email;}else{var _67=b.label;}if(_66>_67){return 1;}else{return -1;}}});}if(!dojo._hasResource["pw.widget.ProductDetailLightbox"]){dojo._hasResource["pw.widget.ProductDetailLightbox"]=true;dojo.provide("pw.widget.ProductDetailLightbox");dojo.declare("pw.widget.ProductDetailLightbox",[agi.classes.Identified,agi.widget.Lightbox,agi.classes.Adopter],{__doc__:"Lightbox widget for product detail display (Look Inside buttons).",templateString:"<div>\n\n<div id=\"pw-light-productdetail\" class=\"pw-rc-light\" ><span class=\"pw-x1\"></span><span class=\"pw-x2\"></span><span class=\"pw-x3\"></span>\n\t<div class=\"pw-light-header\">\n        <ul>\n            <li class=\"pw-l-close\">\n                <a href=\"/\" onclick=\"dojo.publish('pw/modals/product-detail/hide'); \n                        return false;\"><span></span>Close</a>\n            </li>\n        </ul>\n    </div>\n    \n    <div class=\"pw-light-content\">\n        <h3 id=\"product-title\">Product Detail</h3>\n        <div id=\"product-detail-content\"></div>\n    </div>\n</div>\n\n</div>\n",imghost:imghost,currentIndex:0,isContentStaged:false,constructor:function(){},postCreate:function(){this.inherited(arguments);dojo.subscribe("pw/modals/product-detail/show",dojo.hitch(this,this.onOpen));dojo.subscribe("pw/modals/product-detail/hide",dojo.hitch(this,this.onClose));dojo.subscribe("pw/modals/hide",dojo.hitch(this,this.onClose));this.handles=[];},onOpen:function(_68){this.show();this.wireUp();if(!this.isContentStaged){this.stageContent();}this.setupLightboxContent();dojo.byId("product-title").innerHTML=_68.product_title;},wireUp:function(){},stageContent:function(){var _69=dojo.byId("product-detail-staging");var _6a=_69.parentNode;_69=_6a.removeChild(_69);dojo.byId("product-detail-content").appendChild(_69);_69.style.display="block";this.isContentStaged=true;},onClose:function(evt){if(evt){dojo.stopEvent(evt);}this.hide();dojo.forEach(this.handles,dojo.disconnect);this.handles=[];},showProductDetail:function(evt){dojo.stopEvent(evt);dojo.publish("pw/modals/product-detail/show");},setupLightboxContent:function(){var _6b=dojo.query(".product-detail-label");for(var i=0;i<_6b.length;i++){var _6c=_6b[i].id.substring(_6b[i].id.indexOf("_")+1);var _6d=parseInt(_6c,10);dojo.connect(_6b[i],"onclick",dojo.hitch(this,"setPreviewContent",_6d));}this.showPanel(0);},setPreviewContent:function(_6e,_6f){this.showPanel(_6e);dojo.stopEvent(_6f);return false;},showPanel:function(_70){var _71=dojo.query(".product-detail-image");for(var i=0;i<_71.length;i++){_71[i].style.display=(_71[i].id=="product-panel_"+_70)?"block":"none";}var _72=dojo.query(".product-detail-btn");for(var i=0;i<_72.length;i++){if(_72[i].id=="product-detail-btn_"+_70){_72[i].src=_72[i].src.replace(/-off\./,"-on.");}else{_72[i].src=_72[i].src.replace(/-on\./,"-off.");}}this.currentIndex=_70;},showNext:function(_73){var _74=this.currentIndex+1%this.panels.length;this.showPanel(this.panels[_74]);},showPrev:function(_75){var _76=this.currentIndex-1%this.panels.length;this.showPanel(this.panels[_76]);}});}if(!dojo._hasResource["pw.validators.emailproduct"]){dojo._hasResource["pw.validators.emailproduct"]=true;dojo.provide("pw.validators.emailproduct");dojo.addOnLoad(function(){if(!agx.currentPage.max_share_message){agx.currentPage.max_share_message=1000;}if(!agx.currentPage.max_share_emails){agx.currentPage.max_share_emails=3;}pw.validators.emailproduct.profile={fields:["email","femail","message"],required:["email","femail","message"],constraints:{email:[agi.validate.isValidEmailAddress],femail:[agi.validate.isEmailAddressList,{maxlength:agx.currentPage.max_share_emails}],message:[dojox.validate.isText,{maxlength:agx.currentPage.max_share_message}]},messages:{email:{missing:"Email address is required",invalid:"Invalid email address"},femail:{missing:"Email address is required",invalid:"Invalid email address"},message:{missing:"Message is required",invalid:"Message must contain fewer than "+agx.currentPage.max_share_message+" characters"}}};dojo.publish("pw/validators/emailproduct/loaded",[]);});}if(!dojo._hasResource["agi.widget.TextAreaLimiter"]){dojo._hasResource["agi.widget.TextAreaLimiter"]=true;dojo.provide("agi.widget.TextAreaLimiter");dojo.declare("agi.widget.TextAreaLimiter",[agi.classes.Identified],{nodes:null,node:null,swallow_keys:null,max_length:0,rows:0,cols:0,constructor:function(_77,_78){if(_78.max_length){this.max_length=_78.max_length;}if(_78.rows){this.rows=_78.rows;}if(_78.cols){this.cols=_78.cols;}if(_78.swallow_keys){this.swallow_keys=_78.swallow_keys;}else{this.swallow_keys=[];}this.attach(_77);},attach:function(_79){if(dojo.isArrayLike(_79)&&_79.connect!=null){this.nodes=_79;this.nodes.connect("onkeypress",this,this.limit_length);}else{if(dojo.isArrayLike(_79)){this.nodes=_79;dojo.forEach(this.nodes,function(_7a){_7a=dojo.byId(_7a);dojo.connect(_7a,"onkeypress",this,this.limit_length);},this);}else{this.node=dojo.byId(_79);dojo.connect(this.node,"onkeypress",this,this.limit_length);}}},limit_length:function(evt){var _7b=(evt.keyChar.length>0)?true:false;var _7c=(evt.metaKey||evt.ctrlKey);var _7d=(this.swallow_keys.indexOf(evt.keyCode)>-1);if(_7d){dojo.stopEvent(evt);return;}var _7e=(evt.target||evt.srcElement);var _7f=agi.util.selection.length(_7e);if(this.max_length>0&&(_7e.value.length-_7f)>=this.max_length&&(_7b&&!_7c)){dojo.stopEvent(evt);_7e.value=_7e.value.substring(0,this.max_length);}var _80=this.get_position(_7e);if(this.rows>0&&(_80.r)==this.rows&&evt.keyCode==dojo.keys.ENTER){dojo.stopEvent(evt);}if(this.cols>0&&(_80.c)==this.cols&&(_7b&&!_7c)){dojo.stopEvent(evt);}},set_max_length:function(_81){this.max_length=_81;},get_position:function(_82){var _83=agi.util.selection.get_cursor_position(_82);var _84=_82.value;var _85=_84.split("\n");var _86=0;var _87=-1;var row=-1;for(var i=0;i<_85.length;i++){_86+=_85[i].length+1;if(_86>_83){row=i;_87=_83-(_86-_85[i].length-1);break;}}return {r:_85.length,c:_87};}});}if(!dojo._hasResource["pw.widget.EmailProduct"]){dojo._hasResource["pw.widget.EmailProduct"]=true;dojo.provide("pw.widget.EmailProduct");dojo.declare("pw.widget.EmailProduct",[agi.classes.Identified,agi.classes.Adopter],{__doc__:"Email a product to a friend",form:null,deferred:null,profile:null,text_limiter:null,constructor:function(_88){if(!agx.currentPage.max_share_message){agx.currentPage.max_share_message=1000;}this.form=dojo.byId(_88);this.text_limiter=new agi.widget.TextAreaLimiter("message",{max_length:agx.currentPage.max_share_message});this.busy=new pw.widget.BusyOverlay();this.wire();},wire:function(){dojo.connect(this.form,"onsubmit",this,this.on_submit);dojo.subscribe("agi/widget/tabber/tab-changed",this,this.on_open);},on_open:function(_89,_8a,_8b){this.profile=pw.validators.emailproduct.profile;var _8c=dojo.query("#"+this.form.id,_8b);if(_8c.length>0){this.reset();}},reset:function(){pw.validators.deleteErrorMessages(this.form);pw.validators.cleanErrors(this.form,this.profile.fields);this.form.reset();var _8d=dojo.byId("pw-emailafriend-error");if(_8d!=null){dojo.destroy(_8d);}var _8e=dojo.byId("pw-emailafriend-success");if(_8e!=null){dojo.destroy(_8e);}},on_submit:function(evt){dojo.stopEvent(evt);if(!this.validate(this.form)){return;}agi.validate.reformatEmailAddressList("femail");params={form:this.form,handleAs:"json",load:dojo.hitch(this,this.on_success),error:dojo.hitch(this,this.on_error)};this.deferred=dojo.xhrPost(params);this.busy.show("pw-detailborders","medium");},on_success:function(_8f,_90){this.busy.hide();if(_8f.status==-1){pw.validators.showServerErrors(this.form,this.profile,_8f.errors);}if(_8f.status==0){this.reset();dojo.create("P",{id:"pw-emailafriend-success",innerHTML:"Your message has been sent."},this.form,"before");}},on_error:function(){this.busy.hide();},validate:function(){var _91=dojox.validate.check(this.form,this.profile);if(_91.isSuccessful()){pw.validators.deleteErrorMessages(this.form);pw.validators.cleanErrors(this.form,this.profile.fields);return true;}pw.validators.showErrors(this.form,_91,this.profile);return false;}});}if(!dojo._hasResource["pw.controllers.ProductDetail"]){dojo._hasResource["pw.controllers.ProductDetail"]=true;dojo.provide("pw.controllers.ProductDetail");dojo.declare("pw.controllers.ProductDetail",[pw.controllers.AutoCompletePage],{__doc__:"Controller for product detail page",_fadeHandles:[],product_detail:null,related:null,maylike:null,email_product:null,autocomplete:null,constructor:function(){var _92={lightboxId:"lightbox",loaderId:"loadingImage",overlayId:"pw-overlay",loadnow:false,width:660,top:50,overflow:""};_92.lightboxId="lightbox_product_detail";this.product_detail=new pw.widget.ProductDetailLightbox(_92);var _93=dojo.byId("pw-lookinside");if(_93!=null){var _94=dojo.byId("pw-product-title").innerHTML;dojo.connect(_93,"onclick",function(e){dojo.stopEvent(e);dojo.publish("pw/modals/product-detail/show",[{product_title:[_94]}]);});}this.wireTabber();this.preloadImages();},preloadImages:function(){dojo.forEach(agx.currentPage.alternates,function(alt){dojo.forEach(alt.images,function(img){var i=new Image();i.src=imghost+"/"+img;});});},wireTabber:function(){this.tabber=new agi.widget.Tabber({"node":"tabs","classBase":"pw-tab"});var _95=dojo.byId("pw-relatedproducts");if(_95!=null){this.related=new agi.widget.Carousel("pw-related-carousel",4,4,true,true,1);}var _96=dojo.byId("pw-tabheader-related");if(_96!=null){dojo.connect(_96,"onclick",dojo.hitch(this,this.showRelated));}var _97=dojo.byId("pw-maylike");if(_97!=null){this.maylike=new agi.widget.Carousel("pw-maylike-carousel",4,4,true,true,1);}var _98=dojo.byId("pw-tabheader-maylike");if(_98!=null){dojo.connect(_98,"onclick",dojo.hitch(this,this.showMayLike));}this.email_product=new pw.widget.EmailProduct("email_product");this.autocomplete=new agi.widget.StorageComplete("femail","/contacts/search-contacts");var _99=dojo.byId("pw-tabheader-shipping");if(_99!=null){dojo.connect(_99,"onclick",dojo.hitch(this,this.showShipping));}var _9a=dojo.byId("pw-tabheader-email");if(_9a!=null){dojo.connect(_9a,"onclick",dojo.hitch(this,this.showEmail));}dojo.subscribe("pw/detail/options/select",dojo.hitch(this,this.showAlternateImage));},showTab:function(idx,id){if(!this.tabber.showIdx(idx)){agi.dom.window.scroll_into_view(id);}this._fadeHandles.push(dojo.subscribe("agi/widget/tabber/fade-complete",dojo.hitch(this,function(_9b,_9c,_9d){if(_9d.style.display=="block"){agi.dom.window.scroll_into_view(_9d.id);dojo.forEach(this._fadeHandles,dojo.unsubscribe);this._fadeHandles=[];}})));},showRelated:function(evt){if(evt){dojo.stopEvent(evt);}this.showTab(0,"pw-relatedproducts");},showMayLike:function(evt){if(evt){dojo.stopEvent(evt);}var idx=0+(this.related==null?0:1);this.showTab(idx,"pw-maylike");},showShipping:function(evt){if(evt){dojo.stopEvent(evt);}var idx=0+(this.maylike==null?0:1)+(this.related==null?0:1);this.showTab(idx,"pw-order_shipping");},showEmail:function(evt){if(evt){dojo.stopEvent(evt);}var idx=1+(this.maylike==null?0:1)+(this.related==null?0:1);this.showTab(idx,"pw-emailfriend");},showAlternateImage:function(_9e){var _9f=dojo.query("#pw-detailimg img")[0];dojo.forEach(agx.currentPage.alternates,function(alt){if(alt.options.indexOf(_9e)!=-1||alt.id==_9e){_9f.src=imghost+"/"+alt.images[0];}});}});}if(!dojo._hasResource["pw.controllers.Category"]){dojo._hasResource["pw.controllers.Category"]=true;dojo.provide("pw.controllers.Category");dojo.declare("pw.controllers.Category",[pw.controllers.StandardPage],{__doc__:"Controller for the Category/Refinement page",constructor:function(){var _a0=dojo.query(".pw-pag-sort select").connect("onchange",dojo.hitch(this,this.onSortChange));var _a1=dojo.query(".pw-tip-catselected");if(_a1.length>0){this.ttRefineX=new pw.widget.Tooltip({connectId:_a1,label:pw.messages.tooltip.removeRefinement});}},onSortChange:function(evt){var _a2=evt.target.value;var qs=dojo.queryToObject(window.location.search.slice(1));qs.sort=_a2;if("page" in qs){delete qs.page;}var _a3=dojo.objectToQuery(qs);window.location=khost+window.location.pathname+"?"+_a3;}});}dojo.publish("/agi.layers.shop/loaded/");

