app.tracking={};app.tracking.ProductSearchModel=(function(){function a(b){var e={};function d(){return b.categoryID}e.getCategoryID=d;function f(){return b.searchPhrase}e.getSearchPhrase=f;function g(){return b.refinements}e.getRefinements=g;function c(){return b.count}e.getCount=c;return e}return a})();app.tracking.ContentSearchModel=(function(){function a(c){var d={};function e(){return c.folderID}d.getFolderID=e;function f(){return c.searchPhrase}d.getSearchPhrase=f;function g(){return c.refinements}d.getRefinements=g;function b(){return c.count}d.getCount=b;return d}return a})();app.tracking.Product=(function(){function a(c){var p={};function d(){return c.ID}p.getID=d;function g(){return c.masterID}p.getMasterID=g;function l(){return"masterCategoryID" in c?c.masterCategoryID:null}p.getMasterCategoryID=l;function n(){return c.name}p.getName=n;function b(){return c.ean}p.getEan=b;function q(){return c.brand}p.getBrand=q;function m(){return c.salesPrice}p.getSalesPrice=m;function r(){return c.listPrice}p.getListPrice=r;function k(){return c.variationAttributes}p.getVariationAttributes=k;function f(){return"categoryID" in c?c.categoryID:null}p.getCategoryID=f;function i(){return"quantity" in c?c.quantity:null}p.getQuantity=i;function h(){return"quantityChange" in c?c.quantityChange:null}p.getQuantityChange=h;function e(){return"price" in c?c.price:null}p.getPrice=e;function o(){return"categoryPath" in c?app.tracking.CategoryPath(c.categoryPath):null}p.getCategoryPath=o;function s(t){var u=c.variationAttributes;if(null!=u&&t in u){return u[t]}return null}p.getVariationAttribute=s;function j(t){if(t in c){return c[t]}var u=c.custom;if(null!=u&&t in u){return u[t]}return null}p.getAttributeValue=j;return p}return a})();app.tracking.Basket=(function(){function a(e){var d={};var f=e.products?$.map(e.products,app.tracking.Product):null;function c(){return f}d.getProducts=c;function b(){return e.total}d.getTotal=b;return d}return a})();app.tracking.Order=(function(){function a(c){var e=app.tracking.Basket(c);function b(){return c.orderNo}e.getOrderNo=b;function d(){return c.newCustomer}e.getNewCustomer=d;return e}return a})();app.tracking.Request=(function(){function a(e){var c={};function d(){return e.siteId}c.getSiteId=d;function b(){return e.siteName}c.getSiteName=b;function f(){return e.locale}c.getLocale=f;return c}return a})();app.tracking.Customer=(function(){function a(d){var c={};function b(){return d.customerNo}c.getCustomerNo=b;return c}return a})();app.tracking.Category=(function(){function a(d){var c={};function b(){return d.ID}c.getID=b;function e(){return d.name}c.getName=e;return c}return a})();app.tracking.CategoryPath=(function(){function a(c){var d={};function e(f){return undefined===f?c:(f<c.length?c[f]:null)}d.getCategoryPath=e;function b(){return e(c.length-1)}d.getDeepestCategory=b;return d}return a})();app.tracking.FolderPath=(function(){function a(c){var b=app.tracking.CategoryPath(c);var d={};d.getFolderPath=b.getCategoryPath;d.getDeepestFolder=b.getDeepestCategory;return d}return a})();app.tracking.ContentPage=(function(){function a(c){var b=app.tracking.CategoryPath(folderPath);var e={};function d(){return c.ID}e.getID=d;function f(){return c.name}e.getName=f;return e}return a})();app.tracking.Tracking=(function(){var e={};var d={};function g(k,j){e["set"+k]=function(l){if("undefined"!==typeof j){d[k]=j(l)}else{d[k]=l}};e["get"+k]=function(){return d[k]}}function a(k,j){return function(){return k in d?d[k][j].apply(this,arguments):null}}function f(m,j){g(m,j);var l=j(null);for(var k in l){if(0==k.indexOf("get")){e[k]=a(m,k)}}}f("Request",app.tracking.Request);g("PageType");g("PageID");g("Form");g("Errors");g("ProductDetails",app.tracking.Product);g("ProductSearch",app.tracking.ProductSearchModel);g("Category",app.tracking.Category);f("CategoryPath",app.tracking.CategoryPath);g("ContentPage",app.tracking.ContentPage);g("ContentSearch",app.tracking.ContentSearchModel);f("FolderPath",app.tracking.FolderPath);f("Customer",app.tracking.Customer);g("Basket",app.tracking.Basket);g("Order",app.tracking.Order);function c(j){for(var k in j){if("set"+k in e){e["set"+k](j[k],e)}}}e.update=c;var i={};function h(k,l,j){if(!(k in i)){i[k]=[]}i[k].push({callback:l,context:(j||null)})}e.register=h;function b(o,p){if(o in i){var k=i[o];for(var m=0,j=k.length;m<j;m++){var n=k[m];n.callback.call(n.context,p)}}}e.trigger=b;return e})();
