dojo.require("dojo.event.*");
dojo.require("dojo.widget.*");
dojo.require("dojo.lang.*");
dojo.require("dojo.io.*");
if(typeof (analyticsJS)=="undefined"||!analyticsJS||!analyticsJS.topicNamespace){
analyticsJS={storeId:0,catalogId:0,urlPath:null,AccordionTitle:"miniQuickCart",jsonPageView:"AnalyticsPageView",jsonProductView:"AnalyticsProductView",jsonElementView:"AnalyticsElementView",jsonShopcartView:"AnalyticsShopcartView",topicNamespace:"/wc/analytics/",pageView:"pageview",productView:"productview",cartView:"cartview",element:"element",tooltipDelay:3000,pageViewActionIdList:["AjaxAddOrderItem","AjaxDeleteOrderItem","AjaxInterestItemAdd","AjaxInterestItemDelete","AjaxSubmitOrder","AjaxUpdateOrderItem","FastCheckOutOrderCopy","FastCheckOutPrepareOrder","OrderItemShipmentBlockUpdate","AjaxAddOrderItemWithShipingInfo","PrdAjaxAddOrderItem"],cartViewActionIdList:["AjaxAddOrderItem","AjaxDeleteOrderItem","AjaxUpdateOrderItem","AjaxAddOrderItemWithShipingInfo","PrdAjaxAddOrderItem"],tooltipRefreshAreaIdList:["StoreAccordian_CheckOut_Widget","StoreAccordian_QuickCart_Widget","StoreAccordian_WishList_Widget","catalogSearchResultDisplay_Widget","fastFinderResultsRefreshArea","EMarketingSpot_Widget"],fastFinderEvents:[["filterResultsWithOrderBy","orderby",function(_1){
var _2="";
if(_1&&_1!=null&&_1.options!=null){
_2=_1.options[_1.selectedIndex].text;
}
return _2;
}],["filterResultsWithPrice","price slider range",function(_3){
var _4=_3.getFormattedValues();
return ["[",_4.lower," - ",_4.upper,"]"].join("");
}],["filterResultsWithView","view change"]],fastFinderCheckboxForms:[["BrandsForm","brands"],["FeatureNamesForm","features"]],publishAnalyticsView:function(_5,_6,_7){
var _8=this;
dojo.io.bind({url:_5,encoding:"utf-8",mimetype:"application/json",content:dojo.lang.mixin({storeId:_8.storeId,catalogId:_8.catalogId},_6),error:function(_9,_a){
dojo.debug("error with type = "+_9+" and error message: "+_a.message);
},load:function(_b,_c,_d){
_7.call(_8,_c);
}});
},getStoreAccordionPageName:function(){
return document.getElementsByTagName("title")[0].innerHTML;
},getStoreAccordionPageCategory:function(){
return "CHECKOUT";
},getStoreAccordionTitle:function(_e){
var _f=this;
dojo.event.connect("after",_e,"selectChild",function(_10){
var _11="miniQuickCart";
if(_10.label.indexOf("miniCheckOut")!=-1){
_11="miniCheckOut";
}
if(_10.label.indexOf("miniWishList")!=-1){
_11="miniWishList";
}
if(_10.label.indexOf("miniQuickCart")!=-1){
_11="miniQuickCart";
}
if(_10.label.indexOf("compareTitle")!=-1){
_11="compareTitle";
}
_f.AccordionTitle=_11;
});
},getStoreAccordionPageViewData:function(_12){
var _13=this.getStoreAccordionPageName()+":"+_12;
if(typeof (_12)=="undefined"||(_12==null)){
_13=this.getStoreAccordionPageName()+": Order Summary";
}
var _14=this.getStoreAccordionPageCategory();
return {pagename:_13,category:_14};
},makeTopic:function(_15){
return [this.topicNamespace,_15].join("");
},publishTopic:function(_16,_17){
var _18=this.makeTopic(_16);
dojo.debug(["publishing topic: ",_18].join(""));
dojo.event.topic.publish(_18,_17);
},refreshTooltipPageViewRegistration:function(_19){
if(typeof (_19)=="undefined"||_19==null){
_19=this.tooltipRefreshAreaIdList;
}
var _1a=this;
dojo.lang.forEach(_19,function(_1b){
var _1c=dojo.widget.byId(_1b);
dojo.event.kwConnect({srcObj:_1c,srcFunc:"setInnerHTML",adviceFunc:function(){
dojo.debug([_1b,"is refreshed. Re-scanning all the tooltips..."].join(" "));
_1a.registerTooltipPageView();
},once:true});
});
dojo.lang.forEach(["categoryDisplayJS","fastFinderJS"],function(_1d){
var _1e=dojo.lang.getObject(_1d);
if(_1e){
dojo.event.kwConnect({srcObj:_1e,srcFunc:"showResults",adviceFunc:function(){
dojo.debug(_1d+".showResults() is called. Re-scanning all the tooltips...");
_1a.registerTooltipPageView();
},once:true});
}
});
},getTooltips:function(){
var _1f=dojo.lang.reduce(["dojo:ToolTipContent","wc:ToolTipContent"],{},function(_20,_21){
var _22=dojo.widget.getWidgetsByType(_21);
dojo.lang.forEach(_22,function(_23){
_20[_23.widgetId]=_23;
});
return _20;
});
var _24=[];
for(id in _1f){
_24.push(_1f[id]);
}
return _24;
},_registeredTooltips:{},registerTooltipPageView:function(){
var _25=this.getTooltips();
var _26=this;
var _27=0;
dojo.lang.forEach(_25,function(_28){
dojo.debug([_28," is being registered for page view. "].join(""));
if(_26._registeredTooltips[_28.widgetId]){
dojo.event.kwDisconnect(_26._registeredTooltips[_28.widgetId]);
}
var _29={srcObj:_28,srcFunc:"_onHover",adviceFunc:function(e){
if(_27<0){
return;
}
if(_27==0){
_27=new Date().getTime();
}else{
if(new Date().getTime()-_27>=_26.tooltipDelay){
var _2b=_28.productObj;
var _2c=_2b?_2b.catentryId:_28.extraArgs["catalogentryid"];
var _2d=_28.extraArgs["cmcategory"];
_26.publishAnalyticsView(_26.jsonProductView,{categoryId:_2d,productId:_2c,storeId:_26.storeId},function(_2e){
_26.publishTopic(_26.productView,_2e);
_27=-1;
});
_27=-1;
}
}
},once:true};
dojo.event.kwConnect(_29);
_26._registeredTooltips[_28.widgetId]=_29;
dojo.event.kwConnect({srcObj:_28,srcFunc:"_onUnHover",adviceFunc:function(e){
_27=0;
},once:true});
});
},registerStoreAccordionPageView:function(_30){
var _31=false;
var _32=this;
dojo.event.connect("before",_30,"selectChild",function(_33){
dojo.debug(["before store accordion selecting child: ",_33]);
_31=_33.selected;
});
dojo.event.connect("after",_30,"selectChild",function(_34){
if(_34.selected&&!_31){
_32.publishStoreAccordionPageView(_34.label);
}
});
dojo.debug("accordion page view registered");
},publishStoreAccordionPageView:function(_35){
var _36=this.getStoreAccordionPageViewData(_35);
if(typeof (_35)!="undefined"&&_35!=null){
dojo.lang.mixin(_36,_35);
}
this.publishPageView(_36);
},publishPageView:function(_37){
var _38=this;
this.publishAnalyticsView(_38.jsonPageView,_37,function(_39){
_38.publishTopic(_38.pageView,_39);
});
},registerActionPageViews:function(){
var _3a=this;
var _3b=true;
if(typeof (shipmentPageJS)!="undefined"&&shipmentPageJS!=null){
dojo.event.connect("before",shipmentPageJS,"updateCartWait",function(){
_3b=false;
});
}
dojo.lang.forEach(this.pageViewActionIdList,function(_3c){
dojo.event.topic.subscribe("modelChanged/"+_3c,function(_3d){
if(_3b){
_3a.publishStoreAccordionPageView(_3a.AccordionTitle);
}else{
_3a.publishPageView({pagename:document.getElementsByTagName("title")[0].innerHTML});
}
});
});
},registerComparisonPanePageView:function(){
var _3e=this;
dojo.lang.forEach(["compareDropEventHandler","deleteFromCompareZone"],function(_3f){
dojo.event.connect("after",storeAccordionJS,_3f,function(e){
_3e.publishStoreAccordionPageView(_3e.AccordionTitle);
});
});
},publishCartView:function(){
var _41=this;
var _42=document.getElementById("cmextraparms").value;
if(_42==null){
_42="";
}
this.publishAnalyticsView(_41.jsonShopcartView,{storeId:_41.storeId,extraparms:_42},function(_43){
_41.publishTopic(_41.cartView,_43);
});
},registerActionCartViews:function(){
var _44=this;
dojo.lang.forEach(this.cartViewActionIdList,function(_45){
dojo.debug("subscribing to modelChanged/"+_45);
dojo.event.topic.subscribe("modelChanged/"+_45,function(){
dojo.debug(["cart view with action Id = ",_45].join(" "));
_44.publishCartView();
});
});
},registerShipmentPageView:function(_46){
var _47=this;
dojo.event.connect("after",_46,"numberOfShipmentsChanged",function(_48){
dojo.debug(["shipment changed to ",_48.value].join(""));
_47.publishPageView({pagename:_48.value,category:"shipment"});
_48=null;
});
},registerPaymentPageView:function(_49){
var _4a=this;
dojo.event.connect("after",_49,"setNumberOfPaymentMethods",function(_4b,_4c,_4d){
dojo.debug(["payment number is changed to",_4c.value].join(" "));
_4a.publishPageView({pagename:_4c.value,category:"payment method"});
_4c=null;
});
},registerFastFinderEventHandlers:function(_4e){
var _4f=this;
dojo.lang.forEach(_4f.fastFinderEvents,function(_50){
var _51=_50[0];
var _52=_50[1];
var _53=_50[2];
dojo.event.kwConnect({srcObj:fastFinderJS,srcFunc:_51,adviceFunc:function(_54){
_4f.publishAnalyticsView(_4f.jsonElementView,{elementId:_53?_53(_54):_54,category:["Fast Finder:",_52].join(""),pageId:document.getElementsByTagName("title")[0].innerHTML,pageCategory:_4e},function(_55){
_4f.publishTopic(_4f.element,_55);
});
},once:true});
});
},registerFastFinderFormHandlers:function(){
var _56=this;
dojo.lang.forEach(_56.fastFinderCheckboxForms,function(_57){
var _58=_57[0];
var _59=_57[1];
dojo.lang.forEach(document.forms[_58].elements,function(_5a){
dojo.event.kwConnect({srcObj:_5a,srcFunc:"onchange",adviceFunc:function(){
_56.publishAnalyticsView(_56.jsonElementView,{elementId:_5a.value,category:["Fast Finder: ",_59].join(""),pageId:document.getElementsByTagName("title")[0].innerHTML,pageCategory:"Fast Finder",state:(function(_5b){
if(_5b.checked){
return "checked";
}
return "unchecked";
})(_5a)},function(_5c){
_56.publishTopic(_56.element,_5c);
});
}});
});
});
},registerSearchResultPageView:function(_5d,_5e){
var _5f=true;
var _60=this;
dojo.lang.forEach(["goToResultPage","submitJumpToSearch"],function(_61){
dojo.event.connect("before",CatalogSearchDisplayJS,_61,function(){
_5f=false;
});
});
dojo.event.connect("before",CatalogSearchDisplayJS,"submitAdvancedSearch",function(){
_5f=true;
});
dojo.event.connect("after",dojo.widget.byId(_5d),"setInnerHTML",function(){
var _62=eval("("+dojo.byId(_5e).innerHTML+")").searchResult;
var _63={pagename:"Search Result:"+_62.currentPageNumber};
if(_5f){
_63.searchTerms=_62.searchTerms;
_63.searchCount=_62.totalResultCount;
}
_60.publishPageView(_63);
});
},loadDialogHandler:function(_64,_65){
var _66=this;
dojo.addOnLoad(function(){
_66.registerDialogActionPageView(_64,_65);
});
},registerDialogActionPageView:function(_67,_68){
var _69=this;
var _6a=dojo.widget.byId(_67);
dojo.event.kwConnect({srcObj:_6a,srcFunc:"show",adviceFunc:function(){
dojo.debug("dialogId = "+_67+", pageId="+_68);
var _6b=document.getElementsByTagName("title")[0].innerHTML+":"+_67;
if(_68!=null){
_6b=_68;
}
_69.publishPageView({pagename:_6b,category:""});
},once:true});
},loadPagingHandler:function(){
var _6c=this;
dojo.addOnLoad(function(){
var _6d={forward:"page forward",backward:"page backward"};
var _6e=[["CatalogSearchDisplayJS","goBack",_6d.backward],["CatalogSearchDisplayJS","goForward",_6d.forward],["CatalogSearchDisplayJS.HistoryTracker.prototype","back",_6d.backward],["CatalogSearchDisplayJS.HistoryTracker.prototype","forward",_6d.forward],["fastFinderJS","goBack",_6d.backward],["fastFinderJS","goForward",_6d.forward],["fastFinderJS","filterResultsWithPrevIndex",_6d.backward],["fastFinderJS","filterResultsWithNextIndex",_6d.forward],["fastFinderJS.HistoryTracker.prototype","back",_6d.backward],["fastFinderJS.HistoryTracker.prototype","forward",_6d.forward],["MyAccountDisplay","goBack",_6d.backward],["MyAccountDisplay","goForward",_6d.forward],["MyAccountDisplay.HistoryTracker.prototype","back",_6d.backward],["MyAccountDisplay.HistoryTracker.prototype","forward",_6d.forward],["Common","goBack",_6d.backward],["Common","goForard",_6d.forward],["Common.HistoryTracker.prototype","back",_6d.backward],["Common.HistoryTracker.prototype","forward",_6d.forward],["categoryDisplayJS","goBack",_6d.backward],["categoryDisplayJS","goForward",_6d.forward],["categoryDisplayJS.HistoryTracker.prototype","back",_6d.backward],["categoryDisplayJS.HistoryTracker.prototype","forward",_6d.forward],["","filterResultsWithBeginIndex","paging"],["Common","showTooltip",""],["","showThisBlock",""],["qasInterface","showPopupDisplay",""]];
dojo.lang.forEach(_6e,function(_6f){
dojo.debug("target = "+_6f);
var _70=dojo.lang.getObject(_6f[0]);
var _71=_6f[1];
var _72=_6f[2];
dojo.event.kwConnect({srcObj:_70,srcFunc:_71,adviceFunc:function(){
var _73=document.getElementsByTagName("title")[0].innerHTML;
if(_71=="showTooltip"){
dojo.debug("tooltip id "+_70.tooltipID);
_73=_73+": "+_70.tooltipID;
}else{
if(_71=="showThisBlock"){
_73="Send to a Friend";
}else{
if(_71=="showPopupDisplay"){
_73="Address Verification (QAS)";
}
}
}
_6c.publishPageView({pagename:_73,category:_72});
},once:true});
});
});
},loadStoreAccordionHandlers:function(_74,_75){
var _76=this;
dojo.addOnLoad(function(){
_76.getStoreAccordionTitle(dojo.widget.byId(_74));
_76.registerStoreAccordionPageView(dojo.widget.byId(_74));
_76.registerActionPageViews();
_76.registerComparisonPanePageView();
_76.registerActionCartViews(_75);
});
},loadFastFinderHandlers:function(_77){
var _78=this;
dojo.addOnLoad(function(){
_78.registerFastFinderEventHandlers(_77);
_78.registerFastFinderFormHandlers();
});
},loadSearchResultHandlers:function(_79,_7a){
var _7b=this;
dojo.addOnLoad(function(){
_7b.registerSearchResultPageView(_79,_7a);
});
},loadTooltipHandlers:function(){
var _7c=this;
dojo.addOnLoad(function(){
_7c.refreshTooltipPageViewRegistration();
_7c.registerTooltipPageView();
});
},loadShipmentPageView:function(_7d){
var _7e=this;
dojo.addOnLoad(function(){
_7e.registerShipmentPageView(_7d);
});
},loadPaymentPageView:function(_7f){
var _80=this;
dojo.addOnLoad(function(){
_80.registerPaymentPageView(_7f);
});
}};
}

