﻿/***************************************************************
* 
* ActinicCore.js	-	core utility functions
*
* Copyright (c) 2014 SellerDeck Limited
*
****************************************************************/
var bPageIsLoaded=!1;function setCookie(e,t,r){var i=e+"="+escape(t)+"; path=/";return r&&(i+="; expires="+r.toGMTString()),document.cookie=i,null}function getCookie(e){for(var t=document.cookie.split("; "),r,i=0;i<t.length;i++)if((r=t[i].split("="))[0]==e)return unescape(r[1]);return null}function saveReferrer(){if("ActPopup"!=window.name){var e=!1;if(0==parent.frames.length)e=!0;else{for(var t=!1,r=parent.frames.length;r>0;r--)if("CatalogBody"==parent.frames[r-1].name){t=!0;break}t?"CatalogBody"==window.name&&(e=!0):e=!0}if(e){var i=document.URL,n=i.lastIndexOf("#"),o=i.lastIndexOf("#SID=");n>0&&-1==o&&(i=i.substring(0,n)),setCookie("ACTINIC_REFERRER",i)}return null}}function CreateArray(e){this.length=e;for(var t=1;t<=e;t++)this[t]=new Section;return this}function Section(){this.sURL=null,this.sName=null,this.sImage=null,this.nImageWidth=null,this.nImageHeight=null,this.nSectionId=null,this.pChild=null}function SwapImage(e,t){var r=0;document.aSource=new Array,null!=document[e]&&(document.aSource[r++]=document[e],null==document[e].sOldSrc&&(document[e].sOldSrc=document[e].src),document[e].src=t)}function RestoreImage(){var e,t=document.aSource;if(null!=t)for(e=0;e<t.length;e++)null!=t[e]&&null!=t[e].sOldSrc&&(t[e].src=t[e].sOldSrc)}function PreloadImages(){if(bPageIsLoaded=!0,document.images){document.Preloaded||(document.Preloaded=new Array);var e,t=document.Preloaded.length,r=PreloadImages.arguments;for(e=0;e<r.length;e++)document.Preloaded[t]=new Image,document.Preloaded[t++].src=r[e]}}function ShowPopUp(e,t,r){return 0!=e.indexOf("http")&&0!=e.indexOf("/")&&(e=GetDocumentBaseHref()+e),window.open(e,"ActPopup","width="+t+",height="+r+",scrollbars, resizable"),bPageIsLoaded||window.location.reload(!0),!1}function GetDocumentBaseHref(){var e=document.getElementsByTagName("base");if(e&&e[0]){var t=e[0];if(t.href)return t.href}return""}function DecodeMail(){for(var e=0;e<document.links.length;e++)if("contactus"==document.links[e].name){for(var t=document.links[e].href;-1!=t.indexOf(" [dot] ");)t=t.replace(" [dot] ",".");for(;-1!=t.indexOf(" [at] ");)t=t.replace(" [at] ","@");document.links[e].href=t}}function HtmlInclude(){var e;if("undefined"==typeof XMLHttpRequest)try{e=new ActiveXObject("Msxml2.XMLHTTP")}catch(t){try{e=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){return}}else e=new XMLHttpRequest;var t=document.getElementsByTagName("A"),r;for(r=0;r<t.length;r++)if("fragment"==t[r].getAttribute("rel"))try{if(e.open("GET",t[r].getAttribute("href"),!1),document.characterSet&&e.overrideMimeType("text/html; charset="+document.characterSet),e.send(null),200==e.status){var i=document.createElement("SPAN");i.innerHTML=e.responseText,t[r].parentNode.replaceChild(i,t[r])}}catch(e){return}}function AddEvent(e,t,r){e.attachEvent?(e["e"+t+r]=r,e[t+r]=function(){e["e"+t+r](window.event)},e.attachEvent("on"+t,e[t+r])):e.addEventListener(t,r,!1)}AddEvent(window,"load",HtmlInclude),window.SDStorage={isSupported:function(){try{var e=(new Date).valueOf();window.SDStorage.write(e,e,!0);var t=window.SDStorage.read(e,!0);return window.SDStorage.remove(e,!0),e==t}catch(e){return!1}},writePage:function(e,t){try{window.SDStorage.write(e+"|"+window.location.href,t,!0)}catch(e){}},readPage:function(e){return window.SDStorage.read(e+"|"+window.location.href,!0)},writeGlobal:function(e,t){window.SDStorage.write(e+"|global",t,!0)},readGlobal:function(e){return window.SDStorage.read(e+"|global",!0)},write:function(e,t,r){"object"==typeof t&&(t=JSON.stringify(t)),r?sessionStorage.setItem(e,t):localStorage.setItem(e,t)},read:function(e,t){if(t)var r=sessionStorage.getItem(e);else var r=localStorage.getItem(e);try{var i=JSON.parse(r)}catch(e){return r}return i},remove:function(e,t){t?sessionStorage.removeItem(e):localStorage.removeItem(e)}};/***************************************************************
* 
* ActinicExtras.js	-	additional utility functions
*
* Copyright (c) 2014 SellerDeck Limited
*
****************************************************************/
var bDebug=!1,bShowErrors=!0,g_arrAJAX=[],g_mapAJAXArgs={},g_mapAJAXResults={},g_mapDynPrices={},g_mapStockByRef={},g_bStockUpdateInProgress=!1,g_bDynamicPriceUpdatePending=!1,g_bChoicesUpdatePending=!1,g_mapAJAXActions={GetBreadcrumbTrail:SetBreadcrumbTrail},PRICING_MODEL_COMPONENTS_SUM=1;function AddAJAXCall(){var e=arguments[0];g_arrAJAX.push(e);for(var t=1;t<arguments.length;t++)g_mapAJAXArgs[arguments[t]]||(g_mapAJAXArgs[arguments[t]]=1)}function AJAXCall(){if(0!=g_arrAJAX.length){var e=new ajaxObject(g_sAJAXScriptURL);e.callback=function(e){bDebug&&alert(e),(g_mapAJAXResults=e.parseJSON()).Error?bDebug&&alert("Programming Error:"+g_mapAJAXResults.Error):ProcessAJAXResults(g_mapAJAXResults)};var t="ACTIONS="+g_arrAJAX.join(",");for(var r in g_mapAJAXArgs)r&&(t+="&"+r);e.update(t,"GET")}}function ProcessAJAXResults(e){for(var t in e)g_mapAJAXActions[t]&&g_mapAJAXActions[t](e[t])}function AddAJAXBreadcrumbTrail(e){var t=document.getElementById("idBreadcrumbsTop"),r=document.getElementById("idBreadcrumbsBottom");if(t||r){var i=t||r,n=i.getElementsByTagName("a");if(0!=n.length){AdjustPageFileNameSIDAnchor();var o=[];if(document.location.href.match(/\bSID=(\d+)\b/)){o.push("SID="+RegExp.$1),t&&(t.style.visibility="hidden"),r&&(r.style.visibility="hidden");var a=n[0];a.className.match(/\bajs-bc-home\b/)&&o.push("ROOTCLASS="+a.className);for(var l=GetAllElements(i),s=0;s<l.length;s++)if(l[s].className.match(/\bajs-bc-prod\b/)){o.push("PRODCLASS="+l[s].className);break}AddAJAXCall("GetBreadcrumbTrail","REF="+encodeURIComponent(e),o.join("&"))}}}}function SetBreadcrumbTrail(e){if(e.HTML){var t=document.getElementById("idBreadcrumbsTop"),r=document.getElementById("idBreadcrumbsBottom"),i=decodeURIComponent(e.HTML);t&&(t.innerHTML=i,t.style.visibility="visible"),r&&(r.innerHTML=i,r.style.visibility="visible")}bDebug&&alert("Breadcrumb Trail:"+(e.HTML||e.Error)),bShowErrors&&e.Error&&alert("Breadcrumb Trail:"+e.Error)}function AdjustPageFileNameSIDAnchor(){var e=GetInputElement(document,"PAGEFILENAME");if(e){var t=GetSIDAnchor();if(t){e.value=e.value.replace(/#SID=\d+/,"#SID="+t);var r=GetInputElement(e.form,"SID");r&&(r.value=t)}}}function GetSIDAnchor(){var e=document.location.href.split("#SID=");return 2==e.length?e[1]:""}function AppendParentSection(e,t){if(1==arguments.length){var r=GetInputElement(document,"PAGE");if(!r||"PRODUCT"!=r.value)return;var i=GetInputElement(r.form,"SID");return i&&(t=i.value),void(e.href.indexOf("?")>-1&&(e.href+="&SID="+t))}e.href+="#SID="+t}var PASSWORD_MATCH_ERROR="Passwords do not match.";function getCartItem(e){var t=getCookie("CART_CONTENT"),r=null!=t?r=t.split("\t"):0;return r.length>0?r[e]:0}function GotoAnchor(e){window.location.hash=e}!function(s){s.parseJSON=function(filter){try{if("object"==typeof JSON)return JSON.parse(this,filter);var j;function walk(e,t){var r,i,n=e[t];if(n&&"object"==typeof n)for(r in n)Object.prototype.hasOwnProperty.call(n,r)&&(void 0!==(i=walk(n,r))?n[r]=i:delete n[r]);return reviver.call(e,t,n)}var text=String(this),cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;if(cx.lastIndex=0,cx.test(text)&&(text=text.replace(cx,function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})),/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return j=eval("("+text+")"),"function"==typeof reviver?walk({"":j},""):j}catch(e){}throw new SyntaxError("parseJSON")}}(String.prototype);function ajaxObject(e,t){if(e.match(/^https?:/)){var r=document.location.protocol,i=e.split("//")[0];i!=r&&(e=e.replace(new RegExp("^"+i),r));var n=e.split("//")[1].split("/")[0];n!=document.location.host&&(e=e.replace(n,document.location.host))}var o=this;this.updating=!1,this.abort=function(){o.updating&&(o.updating=!1,o.AJAX.abort(),o.AJAX=null)},this.update=function(e,t,r){if(r=void 0===r||r,o.updating)return!1;if(o.AJAX=null,window.XMLHttpRequest?o.AJAX=new XMLHttpRequest:o.AJAX=new ActiveXObject("Microsoft.XMLHTTP"),null==o.AJAX)return!1;if(o.AJAX.onreadystatechange=function(){4==o.AJAX.readyState&&(o.updating=!1,o.callback(o.AJAX.responseText,o.AJAX.status,o.AJAX.responseXML),o.AJAX=null)},o.updating=new Date,/post/i.test(t)){var i=a;o.AJAX.open("POST",i,r),o.AJAX.setRequestHeader("Content-type","application/x-www-form-urlencoded"),o.AJAX.send(e)}else{var i=a+"?"+(""==e?"":e+"&")+"timestamp="+o.updating.getTime();o.AJAX.open("GET",i,r),o.AJAX.send(null)}return!0};var a=e;this.callback=t||function(){}}function getStockNodes(){var e=new Array;if(document.evaluate){for(var t="//*[@class='ActinicRTS']",r=document.evaluate(t,document,null,0,null);e[e.length]=r.iterateNext(););e.pop()}else if(document.getElementsByTagName)for(var i=document.getElementsByTagName("*"),n=0,o=i.length;n<o;n+=1)"ActinicRTS"==i[n].className&&e.push(i[n]);return e}function getProductStock(e,t,r,i){return getStock(e,null,t,r,i)}function getSectionStock(e,t,r,i,n){return getStock(e,t,r,i,n)}function getStock(e,t,r,i,n){if(0==e.indexOf("file://")){for(var o=r.split("|"),a=i.split("|"),l=0;l<o.length;l++){var s=o[l].split("!"),c=s[s.length-1];g_mapStockByRef[c]=a[l]}updateStockDisplay(g_mapStockByRef,!0)}else{g_bStockUpdateInProgress=!0;var d=new ajaxObject(e);d.callback=function(i){if(i.match(/^-?\d+$/)?g_mapStockByRef[r]=i:i&&(g_mapStockByRef=i.parseJSON()),updateStockDisplay(g_mapStockByRef,!0),g_bStockUpdateInProgress=!1,g_bDynamicPriceUpdatePending&&""!==g_sDynamicPriceURL)if(void 0==t){var o=GetSIDAnchor();if(""==o){var a=GetInputElement(document,"PAGE");if(a&&"PRODUCT"==a.value){var l=GetInputElement(a.form,"SID");l&&(o=l.value)}}o&&getAllDynamicPrices(g_sDynamicPriceURL,o,n)}else getAllDynamicPrices(g_sDynamicPriceURL,t,n);else g_bChoicesUpdatePending&&(SetupChoicesAllProducts(e,t,n),g_bChoicesUpdatePending=!1)};var u=null!=t?"ACTION=GETSECTIONSTOCK&SID="+t:"ACTION=GETSTOCK&REF="+encodeURIComponent(r);null==t&&nAssocProdRefSID>0&&(u+="&SID="+nAssocProdRefSID),n&&(u+="&SHOP="+n),d.update(u,"GET")}}function updateStockDisplay(e,t){for(var r={},i=/\brts_([^_]+)_/,n=/\bchk_(v_[^_]+_\d+)_/,o=document.getElementsByTagName("SELECT"),a=0;a<o.length;a++){var l=o[a];if(0==l.name.indexOf("v_")){var s=null;(P=l.className.match(n))&&(s=document.getElementsByName(P[1])[0]);for(var c=0,d=!1,u=!1,p=0;p<l.options.length;p++){var g=l.options[p];""!=g.value&&-1!=g.value||(d=!(s=g).selected),(P=g.className.match(i))?void 0!=e[T=P[1]]&&e[T]<=0?(g.disabled=!0,g.selected&&(g.selected=!1,u=!0)):(g.disabled=!1,1==++c&&(u||t)&&(g.selected=!0)):g.value>0&&1==++c&&t&&(g.selected=!0)}(0==c||s&&!d)&&(!s||"INPUT"!=s.tagName&&-1!=s.value?s&&""==s.value&&c>0?"OPTION"==s.tagName&&t&&(s.selected=!0):(r[y=l.name.match(/^v_([^_]+)_/)[1]]=1,0==c&&l.options.length>0&&void 0!==l.options[0]&&"OPTION"==l.options[0].tagName&&(l.options[0].selected=!0)):"OPTION"==s.tagName?t&&(s.selected=!0):0==c&&(s.checked=!1,s.disabled=!0))}}for(var m={},f={},v=document.getElementsByTagName("INPUT"),a=0;a<v.length;a++){var d=!1,S=v[a];if("checkbox"==S.type){var h=S.name.match(/^v_([^_]+)/);h&&(f["_"+h[1]]=S),d=S.checked}var P=S.className.match(i);if(P){var C=S.name;if(!m[C]){var s="checkbox"==S.type?S:null;(P=S.className.match(n))&&(s=document.getElementsByName(P[1])[0]),!s&&f[C]&&(s=f[C]);for(var c=0,I=document.getElementsByName(C),_=0;_<I.length;_++){var A=I[_];if(-1==A.value&&(s=A),P=A.className.match(i)){var T=P[1];void 0!=e[T]&&e[T]<=0?(A.disabled=!0,"submit"==A.type&&(A.parentNode.style.display="none")):(A.disabled=!1,1==++c&&t&&d&&(A.checked=!0))}else("submit"==A.type||A.value>0)&&(A.disabled=!1,1==++c&&t&&(A.checked=!0))}if(!c)if(s)"radio"==s.type?t&&(s.checked=!0):(t&&(s.checked=!1),s.disabled=!0);else{var y=0==C.indexOf("_")?C.substr(1):C.match(/^v_([^_]+)_/)[1];r[y]=1}m[C]=1}}}for(var R=getStockNodes(),b=0;b<R.length;b++){var E=R[b].id.split("_"),D=E[E.length-1],M=GetProductFromMap(D),L=-1;if(M&&M.bAssemblyProduct){if(M.arrComps)for(var a=0;a<M.arrComps.length;a++){var N=M.arrComps[a],O=N.nQ?N.nQ:1;if(null!=e[N.sAsscProdRef]&&!N.bOpt){!r[D]&&!N.bOpt&&null!=N.sAsscProdRef&&O>e[N.sAsscProdRef]&&(r[D]=1);var F=Math.floor(e[N.sAsscProdRef]/O);L=-1==L?F:Math.min(L,F)}}-1==L&&(r[D]=1)}var w=E[0];if(null!=e[D]){if("StockLevel"==w&&(M&&M.bAssemblyProduct&&L>-1?R[b].innerHTML=L:R[b].innerHTML=e[D]),"EnableIfOutOfStock"==w)if(e[D]<=0&&(!M||!M.bAssemblyProduct)||r[D]){R[b].style.visibility="visible",R[b].style.display="inline";var k=GetElementByName("Q_"+D);k&&(k.value=0,k.disabled=!0)}else R[b].style.visibility="hidden",R[b].style.display="none";"RemoveIfOutOfStock"==w&&(e[D]<=0&&(!M||!M.bAssemblyProduct)||r[D])&&(R[b].innerHTML=""),"EnableIfInStock"==w&&(e[D]>0&&!r[D]?(R[b].style.visibility="visible",R[b].style.display="inline"):(R[b].style.visibility="hidden",R[b].style.display="none")),"RemoveIfInStock"==w&&e[D]>0&&!r[D]&&(R[b].innerHTML=""),"EnableIfStockOk"==w&&(R[b].style.visibility="visible",R[b].style.display="inline")}}1==document.getElementById("PRTSM").getAttribute("name")&&updateMyStock(D)}function DisableOOSComponents(e,t){for(var r=document.getElementsByName(e),i=0;i<r.length;i++){var n=r[i];"SELECT"==n.tagName?0==n.options.length?HandleAllChoicesOutOfStock(e,t):1==n.options.length&&(-1==n.options[0].value?n.options[0].selected=!0:n.options[0].value||(n.options[0].selected=!1,HandleAllChoicesOutOfStock(e,t))):1==r.length&&(-1==n.value?n.checked=!0:n.value||(n.disabled=!0,HandleAllChoicesOutOfStock(e,t)))}0==r.length&&HandleAllChoicesOutOfStock(e,t)}function HandleAllChoicesOutOfStock(e,t){if(t){var r=GetElementByName(t);r.checked=!1,r.disabled=!0}else DisableAddToCart(e)}function DisableAddToCart(e){var t=e.match(/v_([^_]+)_/);if(t){var r=t[1],i=GetElementByName("Q_"+r);i&&(i.value=0,i.disabled=!0);var n=document.getElementById("EnableIfOutOfStock_"+r);n&&(n.style.visibility="visible",n.style.display="inline"),(n=document.getElementById("RemoveIfOutOfStock_"+r))&&(n.innerHTML=""),(n=document.getElementById("EnableIfInStock_"+r))&&(n.style.visibility="hidden",n.style.display="")}}function GetElementByName(e){var t=document.getElementsByName(e);return 0==t.length?null:t[0]}function AttachEvent(e,t,r){e&&("on"==t.substring(0,2)&&(t=t.substring(2,t.length)),e.addEventListener?e.addEventListener(t,r,!1):e.attachEvent&&e.attachEvent("on"+t,r))}function ValidateCartNameDetails(){if(document.location.href.indexOf("SID=")>-1){document.location.href.match(/\bSID=(\d+)/);var e=RegExp.$1,t=GetInputElement(document,"ACTION_BUYNOW").form,r=GetInputElement(t,"SID");r||((r=document.createElement("INPUT")).type="hidden",r.name="SID",t.appendChild(r)),r.value=e}var i=document.getElementById("idRowCartNamePassword");if(!i)return!0;if("none"==i.style.display)return i.style.display="",!1;var n=document.getElementById("idCartName");return""==n.value?(alert("Username must be filled in"),!1):""!=(n=document.getElementById("idCartPassword")).value||(alert("Password must be filled in"),!1)}function DeliveryCountryChanged(){CountryChanged("Delivery")}function InvoiceCountryChanged(){CountryChanged("Invoice")}function CountryChanged(e){var t=document.getElementById("lst"+e+"Country"),r=document.getElementById("lst"+e+"Region");if(t){if(SetCountryTextFieldDisplay(e,""),r&&r.options){var i=document.getElementById("id"+e+"RegionEdit"),n=i?i.value:"",o=r.value;if(r.options.length=1,"UndefinedRegion"==t.value)return r.style.display="none",void(i&&(i.style.display=""));var a=document.getElementById("idSEPARATESHIP"),l=a&&a.checked,s=("Delivery"==e?g_mapDeliveryCountryStateMap:g_mapInvoiceCountryStateMap)[t.value];if(s||"Invoice"!=e||l||!g_mapDeliveryCountryStateMap[t.value]||(s=g_mapDeliveryCountryStateMap[t.value]),!s)return r.style.display="none",void(i&&(i.style.display=""));r.style.display="",i&&(i.style.display="none");for(var c=!1,d=0;d<s.length;d+=2){var u=document.createElement("OPTION");u.text=s[d+1],u.value=s[d],u.value!=o&&u.text!=n||(c=!0,o=u.value,u.selected=!0),r.options.add(u)}c&&(r.value=o)}}else r&&(r.style.display="none")}function SetCountryTextFieldDisplay(e,t){var r="Delivery"==e?"idDELIVERCOUNTRYText":"idINVOICECOUNTRYText",i=document.getElementById(r);if(i){var n=document.getElementById("lst"+e+"Country");i.style.display=n&&"---"==n.value?t:"none"}}function SetDeliveryAddressVisibility(){if(document.getElementById("idInvoiceRule")||document.getElementById("idDeliveryRule"))SetAccountAddressVisibility();else{var e=SD.Responsive.getResponsiveDeliveryFields();SetInvoiceCountries();var t=IsElementChecked("idSEPARATESHIP");e?($("#idBothAddressesTable #idDeliverHeader").toggle(t),$("#idBothAddressesTable > > .DeliverField:not(#idSeparateShipRow)").toggle(t),$("#idBothAddressesTable > > .InvoiceField:not(#idSeparateShipRow)").toggleClass("wideInput",!t)):($("#idSeparateShipCell").attr("colSpan",$("#idDeliverHeader").length&&t?2:1),$("#idBothAddressesTable > > tr > td.DeliverField").toggle(t)),$("#idINVOICERESIDENTIAL").toggle(!t),InvoiceCountryChanged()}}function SetAccountAddressVisibility(){var e=SD.Responsive.getResponsiveDeliveryFields(),t=function(t,r,i){e?$("#idBothAddressesTable >").children("."+t).filter("div:not(#idInvoiceAccountAddresses, #idDeliverAccountAddresses, #idSeparateShipRow)").toggle(r).toggleClass("wideInput",r&&!i):$("#idBothAddressesTable tr:not(.ShowAlways) ."+t).children().filter(":not([id^='pcaDiv'])").toggle(r)},r=IsElementChecked("idINVOICEADDRESSSELECT_0"),i=IsElementChecked("idDELIVERADDRESSSELECT_0"),n=r||i,o;if((o=e?$("#idBothAddressesTable >").children("div:not(#idInvoiceAccountAddresses, #idDeliverAccountAddresses), label, input"):$("#idBothAddressesTable > > tr:not(.ShowAlways)")).toggle(n),n){var a=!1;i&&(r&&!IsElementChecked("idSEPARATESHIP")||(a=!0));var l=r&&a;t("InvoiceField",r,l),r&&InvoiceCountryChanged(),t("DeliverField",a,l),a&&DeliveryCountryChanged(),$("#idSeparateShipRow").toggle(r&&i)}}function IsElementChecked(e){var t=document.getElementById(e);return!(!t||!t.checked)}function SetShoppingCartVisibility(){var e=document.getElementById("idShowHide");if(e){var t=document.getElementById("idShoppingCartGrid");if(t){var r=document.getElementById("idCartHeadingTotal"),i=document.getElementById("idCartChangeCell");"none"==t.style.display?(setCookie("cartDisplayPreference","show"),t.style.display="",e.innerHTML="hide",r.style.display="none",i&&(document.getElementById("idCartChangeCell").style.display="")):(setCookie("cartDisplayPreference","hide"),t.style.display="none",e.innerHTML="show",r.style.display="",i&&(document.getElementById("idCartChangeCell").style.display="none"))}}}function HideCartDetailsOnCheckoutPages(){"show"!==getCookie("cartDisplayPreference")&&SetShoppingCartVisibility()}function SetCreditCardFieldsVisibility(){$("#idPaymentMethodTable .CreditCardField").toggle("10005"==GetPaymentMethod()),"90"===GetPaymentMethod()?GetAvailableFinanceProducts():$("#idPaymentMethodTable .v12FinanceFields").hide()}function CheckForm(e){for(var t=e.parentElement?e.parentElement:e.parentNode;t&&"FORM"!=t.tagName;)t=t.parentElement?t.parentElement:t.parentNode;if(!t)return!0;$("#idCheckoutForm").append('<input type="hidden" name="JS" value="1" />'),$("#idPickupSelect")&&$("#lstClass").prop("disabled")&&$("#idCheckoutForm").append('<input type="hidden" name="ShippingClass" value="'+$("#lstClass").val()+'" />');var r=document.getElementsByName("INVOICEADDRESSSELECT").length>0,i=!1;r&&(i=!IsElementChecked("idINVOICEADDRESSSELECT_0"));var n=document.getElementById("idSEPARATESHIP"),o=!1;if(r&&(o=!IsElementChecked("idDELIVERADDRESSSELECT_0")),o||(o=n&&!n.checked),i&&o)return!0;for(var a=GetAllElements(t),l=0;l<a.length;l++){var s=a[l];if("idINVOICEEMAIL_CONFIRM"==s.id&&!i||"idDELIVEREMAIL_CONFIRM"==s.id&&!o){var c=document.getElementById(s.id.replace(/_CONFIRM$/,""));if("none"!=c.style.display&&c.value!=s.value){var d=GetLabelText(s)+"\n\n";return d+="'"+s.value+"' does not match '"+c.value+"'",alert(d),s.focus(),!1}}if("idNEWCUSTOMERPASSWORD2"==s.id&&(IsElementChecked("idCREATEANACCOUNT")||null==document.getElementById("idCREATEANACCOUNT"))){var u=document.getElementById("idNEWCUSTOMERPASSWORD");if("none"!=u.style.display&&u.value!=s.value){var d=PASSWORD_MATCH_ERROR;return alert(d),s.focus(),!1}}}return i&&!o&&(n.checked=!0),!0}function GetAllElements(e){return e.all?e.all:e.getElementsByTagName?e.getElementsByTagName("*"):void 0}var g_sConfirmOrderInitText="";function SubmitPSPForm(e){if("90"===GetPaymentMethod()){var t=CheckMinMaxDeposit();if(""!==t)return $("#idFinanceDepositError").html(t),$("#idFinanceDepositError").show(),$("#idFinanceDeposit").focus(),!1}var r=GetPaymentMethod();if(-1==r)return!0;var i=document.getElementById("idSpanPSPForm");return i&&(i.innerHTML='<div id="pspwait" style="display:none;">Saving your order... Please wait</div>',ShowPSPWait("pspwait"),ShowPSPForm()),r>=1e4&&r<3e4||(GetPSPFormAndSubmit(r,e),!1)}var g_bConfirmOrderDone=!1;function SubmitPPEForm(e){return g_bConfirmOrderDone?(alert("Your order is being completed"),!1):(g_bConfirmOrderDone=!0,$("#idPickupSelect")&&$("#lstClass").prop("disabled")&&$(e).append('<input type="hidden" name="ShippingClass" value="'+$("#lstClass").val()+'" />'),e.submit(),!1)}function GetPaymentMethod(){var e=document.getElementById("idPAYMENTMETHOD");if(e)return e.value;var t=document.getElementsByName("PAYMENTMETHOD");if(!t)return-1;if(1==t.length)return t[0].value;for(var r=0;r<t.length;r++)if(t[r].checked)return t[r].value;return-1}function GetPSPFormAndSubmit(e,t){var r=new ajaxObject(document.location.href.split("?")[0]);r.callback=function(t,r){if(200!=r||"Error:"==t.substring(0,6))return alert(t),void ShowPSPForm(!1);var i=document.getElementById("idSpanPSPForm");if(i){i.innerHTML=t;var n=document.getElementById("idPSPForm");n?n.submit():RequireScript("psplib"+e+".htm.js",function(){GetPSPHelper()})}};var i="ACTION=GETPSPFORM&PAYMENTMETHOD="+e;t&&(i+="&SHOP="+t);var n=document.getElementsByName("PAYMENTPONO");n.length&&(i+="&PAYMENTPONO="+escape(n[0].value));var o=document.getElementsByName("PAYMENTUSERDEFINED");o.length&&(i+="&PAYMENTUSERDEFINED="+escape(o[0].value)),"90"===e&&(i+=GetParams()),r.update(i,"GET")}function CloseForm(){ShowPSPForm(!1)}function RequireScript(e,t){var r=document.createElement("script"),i=document.getElementsByTagName("script")[0];r.onerror=function(){alert("Error loading ["+e+"]. Please try another payment method."),ShowPSPForm(!1)},void 0!=t&&(r.onreadystatechange=function(){"loaded"!==r.readyState&&"complete"!==r.readyState||t()},r.onload=function(){t()}),r.src=e,i.parentNode.insertBefore(r,i)}function ShowPSPForm(e){var t=document.getElementById("idDivPSPForm");t&&(t.style.display=null==e||e?"inline":"none")}function ShowPSPWait(e,t){null==t||t?(document.getElementById(e).style.display="inline",document.getElementById("pspwait").style.display="inline"):(document.getElementById("pspwait").style.display="none",document.getElementById(e).style.display="none")}function SFDropDownMenu(e){for(var t=document.getElementById(e).getElementsByTagName("LI"),r=0;r<t.length;r++)t[r].onmouseover=function(){this.className+=" sfhover"},t[r].onmouseout=function(){this.className=this.className.replace(new RegExp(" sfhover\\b"),"")}}function ShowHideHelp(e,t){var r=document.getElementById(e.id+"help");r&&(r.style.display=t)}function ShowHideHelpDiv(e,t){var r=document.getElementById(e.id+"help");if(r){var i=document.getElementById("idCheckoutHelp");if(i){var n=r.innerHTML,o=document.getElementById(e.id+"label");o&&"actrequired"==o.className&&(n+=" This is a required field."),i.innerHTML=""==t?n:""}}}function GetLabelText(e){var t=document.getElementById(e.id+"label");if(t||(t=document.getElementById(e.id.replace(/DELIVER/,"INVOICE")+"label")),t){var r=t.innerHTML;return r=r.replace(/(\n|\t)/," "),r=r.replace(/<.*?>/g,""),r=r.replace(/\s*\*$/,"")}return""}function SetFocusToID(e){var t=document.getElementById(e);t&&"none"!=t.style.display&&t.focus()}var g_sInvoiceCountryCode="";function SetInvoiceCountries(){var e=document.getElementById("lstInvoiceCountry");if(e&&e.options){var t=document.getElementById("idINVOICECOUNTRYText"),r=document.getElementById("idSEPARATESHIP"),i=!(!r||!r.checked),n=e.value?e.value:g_sInvoiceCountryCode,o=""!=n&&"---"!=n||!t?"":t.value;e.options.length=1;var a="",l="";for(var s in g_arrCountries){var c=g_arrCountries[s],d=!0;if(d=g_bInvoiceLocationRestrictive?!i&&g_bDeliveryLocationRestrictive?c[2]&&c[3]:c[2]:g_bDeliveryLocationRestrictive&&!i?c[3]:c[2]||c[3]){var u=document.createElement("OPTION");u.value=c[0],u.text=c[1],n&&u.value==n&&(a=u.value),"---"!=n&&u.text==o&&(l=u.value),e.options.add(u)}}a&&(e.value=a),l&&(e.value=l),e.value&&(g_sInvoiceCountryCode=e.value)}}function StateDropdownChanged(e){var t=-1!=e.id.indexOf("Invoice")?"idInvoiceRegionEdit":"idDeliveryRegionEdit",r=document.getElementById(t);if(r&&"UndefinedRegion"!=e.value){var i=e.selectedIndex;r.value=e.options[i].text}}function LoadXMLDoc(e,t){return window.XMLHttpRequest?xhttp=new XMLHttpRequest:xhttp=new ActiveXObject("Microsoft.XMLHTTP"),xhttp.open("GET",e,!1),xhttp.send(null),t?xhttp.responseXML:xhttp.responseText}function DOMDocFromXML(e){var t=null;return window.ActiveXObject?((t=new ActiveXObject("Microsoft.XMLDOM")).async="false",t.loadXML(e)):window.DOMParser&&(t=(new DOMParser).parseFromString(e,"text/xml")),t}function DisplayFeefoFeedback(e,t,r,i,n,o){var a=escape("?logon="+i),l="FeefoFeedback";""!=n&&(a+=escape("&vendorref="+n),l+="_"+n),a+=escape("&limit="+e);var s=r+"?ACTION=FEEFOXML&FEEFOPARAM="+(a+=escape("&mozillahack=true"));o&&(s+="&SHOP="+escape(o));var c=LoadXMLDoc(s,!0);if(null!=c&&""!=c.xml){var d=LoadXMLDoc(t+"feedback.xsl",!1),u=/(feefo\.css|plus\.gif|minus\.gif)/gi,p=DOMDocFromXML(d=d.replace(u,t+"$1"));window.ActiveXObject?(ex=c.transformNode(p),document.getElementById(l).innerHTML=ex):document.implementation&&document.implementation.createDocument&&(xsltProcessor=new XSLTProcessor,xsltProcessor.importStylesheet(p),resultDocument=xsltProcessor.transformToFragment(c,document),document.getElementById(l).appendChild(resultDocument))}}function ShowBackLink(){var e=getCookie("LAST_SECTION_URL");if(e){var t=document.getElementById("idSPPBackLink");t&&(t.href=e,t.style.display="")}}function CheckPassword(e,t){if(!e.value||!t.value||e.value!=t.value){var r=PASSWORD_MATCH_ERROR,i=e;return e.value?t.value||(r="Please enter a value for "+GetLabelText(t),i=t):r="Please enter a value for "+GetLabelText(e),alert(r),i.focus(),!1}return!0}function GetScriptURL(){return document.location.href.split("?")[0]}function IsLoggedIn(){var e=getCookie("ACTINIC_BUSINESS");if(!e)return!1;for(var t=e.split(/\n/),r=0;r<t.length;r++){var i=t[r].split(/\t/);if("USERNAME"==i[0]&&""!=i[1])return!0}return!1}function GetScriptPrefix(){var e=location.pathname.lastIndexOf("/");if(-1!=e)return location.pathname.substr(e+1).substr(0,2)}function SetBusinessCookies(e,t){e||(setCookie("CART_CONTENT","CART_TOTAL\t0\tCART_COUNT\t0"),setCookie("ACTINIC_BUSINESS","BASEFILE"),document.location.replace(document.location.href.replace(/#logout$/,"")))}function OnKeyDownForm(){if(/MSIE (\d+\.\d+);/.test(navigator.userAgent)&&new Number(RegExp.$1)>=9&&13==window.event.keyCode){var e=window.event.srcElement;if("INPUT"==e.tagName&&("submit"==e.type||"button"==e.type))return;for(var t=0;t<e.form.all.length;t++){var r=e.form.all[t];if("INPUT"==r.tagName&&"submit"==r.type)return r.click(),window.event.cancelBubble=!0,void(window.event.returnValue=!1)}}}function Sprintf(e){for(var t=e,r=1;r<arguments.length;r++)t=t.replace(/%s/,arguments[r]);return t}var g_mm_nMenuCloseTimeout=500,g_mm_closeTimer=null,g_mm_menuParent=null,g_mm_menuItem=null,g_mm_NO_MENU_ITEM=-1,g_mm_nIDRecentMouseOver=g_mm_NO_MENU_ITEM,g_mm_timerRecentMouseOver=null,g_mm_nIDForMouseUp=g_mm_NO_MENU_ITEM,g_mm_nWindowsTouchOn=g_mm_NO_MENU_ITEM,g_mm_mapListenersAdded={},$ge=function(e){return document.getElementById(e)};function mmClick(e,t){if(g_mm_nIDRecentMouseOver==t)return e.preventDefault&&e.preventDefault(),!1}function mmClose(){g_mm_menuItem&&(g_mm_menuItem.style.display="none",g_mm_menuItem=null),g_mm_menuParent&&(g_mm_menuParent.className="",g_mm_menuParent=null)}function mmCloseTime(){g_mm_nIDForMouseUp==g_mm_NO_MENU_ITEM?(g_mm_closeTimer&&(window.clearTimeout(g_mm_closeTimer),g_mm_closeTimer=null),g_mm_closeTimer=window.setTimeout(mmClose,g_mm_nMenuCloseTimeout)):g_mm_nWindowsTouchOn=g_mm_nIDForMouseUp}function mmCancelCloseTime(){g_mm_closeTimer&&(window.clearTimeout(g_mm_closeTimer),g_mm_closeTimer=null),g_mm_menuParent&&(g_mm_menuParent.className="sel")}function mmOpen(e){if($("div.miniNav").is(":visible")&&"#"!=$("#main-link"+e).attr("href"))g_mm_nIDRecentMouseOver=g_mm_NO_MENU_ITEM;else if(g_mm_nWindowsTouchOn!=e){g_mm_nIDRecentMouseOver=e,g_mm_timerRecentMouseOver&&window.clearTimeout(g_mm_timerRecentMouseOver),g_mm_timerRecentMouseOver=window.setTimeout(function(){g_mm_nIDRecentMouseOver=g_mm_NO_MENU_ITEM,g_mm_timerRecentMouseOver=null},500),mmCancelCloseTime(),mmClose(),menuDiv=$ge("mega-menu"),g_mm_menuParent=$ge("main-link"+e),g_mm_mapListenersAdded["mouseup"+e]||(AddEvent(g_mm_menuParent,"mouseup",mmMouseUpHandler(e)),g_mm_mapListenersAdded["mouseup"+e]=!0),(g_mm_menuItem=$ge("tc"+e)).style.display="block";var t=menuDiv.offsetWidth,r=g_mm_menuItem.offsetWidth,i=findLeftPos(menuDiv),n=findLeftPos(g_mm_menuParent),o=t-n;if(t<r){var a=r-t;g_mm_menuItem.style.left=-1*(n+Math.floor(a/2)-i)+"px"}else g_mm_menuItem.style.left=t<n-i+r?-1*(n-i+r-t)+"px":"0px"}}function mmMouseUpHandler(e){var t=e;return function(){g_mm_nIDForMouseUp=t,window.setTimeout(function(){g_mm_nIDForMouseUp=g_mm_NO_MENU_ITEM},0)}}function findLeftPos(e){var t=0;if(e.offsetParent){do{t+=e.offsetLeft}while(e=e.offsetParent);return t}}function findPosX(e){var t=0;if(e.offsetParent)for(;;){if(t+=e.offsetLeft,!e.offsetParent)break;e=e.offsetParent}else e.x&&(t+=e.x);return t}function findPosY(e){var t=0;if(e.offsetParent)for(;;){if(t+=e.offsetTop,!e.offsetParent)break;e=e.offsetParent}else e.y&&(t+=e.y);return t}function getDynamicAccPrice(e,t,r,i){var n=0==e.indexOf("file://"),o=r.sProdRef,a="";if(!n){var l="v_"+o+"_",s=document.getElementById("idVars"+o);if(s){if(r.arrComps)for(var c=r.arrComps,d=c.length,u=0;u<d;u++){var p=c[u],g=l+p.nUI,m=document.getElementsByName(g)[0];"checkbox"==m.type?a+="&"+g+"="+(m.checked?"on":"off"):a+="&"+g+"="+m.value,p.elemHTML=m}var f=GetAttributes(s)[o];if(f)for(var v=parseInt(f[0].name.match(/_(\d+)$/)[1]),S=f.length,u=0;u<S;u++){var h=f[u];if(v=parseInt(h.name.match(/_(\d+)$/)[1]),r.arrComps){var P=GetAttrFromSuffix(r,v);P.elem||(P.elem=new CSelect(h))}if("radio"==document.getElementsByName(h.name)[0].type)for(var C=document.getElementsByName(h.name)[0],I=0;null!=C;){if(C.checked){a+="&"+h.name+"="+C.value;break}C=document.getElementsByName(h.name)[++I]}else a+="&"+h.name+"="+h.value}}var _="sPushBtnGridVariants_"+o;void 0!==window[_]&&(a+="&"+window[_]);var A="Q_"+o;a+="&"+A+"="+document.getElementsByName(A)[0].value;var T=new ajaxObject(e);T.callback=function(e,t){if(200!=t){var i=document.getElementById("id"+r.sProdRef+"DynamicPrice"),n=document.getElementById("id"+r.sProdRef+"StaticPrice");return r.bOvrStaticPrice&&n&&!r.bQuantityBreak&&(n.style.visibility="visible",n.style.display=""),void(i&&(i.style.display="none",i.style.visibility="hidden"))}var a=document.getElementById("id"+o+"TaxExcPrice"),l=document.getElementById("id"+o+"TaxIncPrice"),s=document.getElementById("id"+r.sProdRef+"VATMsg");if(null!=e)try{var c=e.parseJSON();if(c.ErrorMsg)return s&&(s.style.visibility="hidden",s.style.display="none"),void(a?a.innerHTML=c.ErrorMsg:l&&(l.innerHTML=c.ErrorMsg));s&&(s.style.visibility="visible",s.style.display="");var d=c.Total,u=c.Total+c.Tax1+c.Tax2;a&&(a.innerHTML=FormatPrices(d)),l&&(l.innerHTML=FormatPrices(u))}catch(e){}};var y="ACTION=GETACCPRICE&PRODREF="+o+"&SID="+t;y+=a,i&&(y+="&SHOP="+i),T.update(y,"GET")}}function SetupChoicesAllProducts(e,t,r){for(var i in g_mapProds){var n=g_mapProds[i];if(n){var o="v_"+i+"_",a=document.getElementById("idVars"+i);if(a){if(n.arrComps){for(var l=n.arrComps,s=l.length,c=0;c<s;c++){var d=l[c],u=o+d.nUI,p=document.getElementsByName(u)[0];d.elemHTML=p}var g=GetAttributes(a)[i];if(g){for(var m=parseInt(g[0].name.match(/_(\d+)$/)[1]),f=g.length,c=0;c<f;c++){var v=g[c],S=GetAttrFromSuffix(n,m=parseInt(v.name.match(/_(\d+)$/)[1]));S.elem||(S.elem=new CSelect(v))}UpdateChoices(n,!0)}}(!n.bOvrStaticPrice||n.nPricingModel!=PRICING_MODEL_COMPONENTS_SUM||g_mapDynPrices[n.sProdRef]&&g_mapDynPrices[n.sProdRef].Total>0)&&UpdatePrice(n,e,t,r)}}}g_mapDynPrices={}}function getAllDynamicPrices(e,t,r){if(0==e.indexOf("file://"))return SetupVariants(!0),"";if(g_bStockUpdateInProgress)return g_bDynamicPriceUpdatePending=!0,"";var i=new ajaxObject(e);i.callback=function(i,n){if(null!=i){if(200==n)try{g_mapDynPrices=i.parseJSON()}catch(e){}SetupChoicesAllProducts(e,t,r)}};var n="ACTION=GETALLPRICES&SID="+t,o="";n+=o=SetupVariants(!0),r&&(n+="&SHOP="+r),i.update(n,"GET"),g_bDynamicPriceUpdatePending=!1}function SetupVariantsForProduct(e,t){var r="",i=g_mapProds[e];if(i){var n="v_"+e+"_",o=document.getElementById("idVars"+e);if(o&&i.arrComps){for(var a=i.arrComps,l=a.length,s=0;s<l;s++){var c=a[s],d=n+c.nUI,u=document.getElementsByName(d)[0];t&&("checkbox"==u.type?r+="&"+d+"="+(u.checked?"on":"off"):r+="&"+d+"="+u.value),c.elemHTML=u}var p=GetAttributes(o)[e];if(p)for(var g=parseInt(p[0].name.match(/_(\d+)$/)[1]),m=p.length,s=0;s<m;s++){var f=p[s],v=GetAttrFromSuffix(i,g=parseInt(f.name.match(/_(\d+)$/)[1]));if(v.elem||(v.elem=new CSelect(f)),t)if("radio"==document.getElementsByName(f.name)[0].type)for(var S=document.getElementsByName(f.name)[0],h=0;null!=S;){if(S.checked){r+="&"+f.name+"="+S.value;break}S=document.getElementsByName(f.name)[++h]}else r+="&"+f.name+"="+f.value}}if(t){var P="sPushBtnGridVariants_"+e;void 0!==window[P]&&(r+="&"+window[P])}}return r}function SetupVariants(e){var t="";for(var r in g_mapProds)t+=SetupVariantsForProduct(r,e);return t}function GetInputElement(e,t){for(var r=e.getElementsByTagName("INPUT"),i=0;i<r.length;i++){var n=r[i];if(n.name==t)return n}}function GetOriginalRef(e){var t=e.split("!");return t[t.length-1]}function GetProductFromMap(e){if(g_mapProds[e])return g_mapProds[e];for(var t in g_mapProds)if(GetOriginalRef(t)==e)return g_mapProds[t]}function SetupDPDPickupOptions(e){if(null!=e.Error)return alert("There was an error in initializing the Collection Point Pickup service. Please select another shipping option"),$("#idDPDShippingType3").attr("disabled",!0),HideLoadingDialog(),void $("#idDPDShippingType1").click();$("#map").css("left","0"),$("#map").css("position","relative"),$("#map").css("width","100%"),$("#map").show(),g_mapPickupLocationsJSON=e;var t=e.data.results,r=[];r.forEach(function(e){e.setMap(null)}),r=[];var i=new google.maps.LatLngBounds;t.forEach(function(e){var t=e.pickupLocation.addressPoint.latitude,n=e.pickupLocation.addressPoint.longitude,o=new google.maps.LatLng(t,n),a={organisation:e.pickupLocation.address.organisation,postcode:e.pickupLocation.address.postcode,locality:e.pickupLocation.address.locality,property:e.pickupLocation.address.property,street:e.pickupLocation.address.street,town:e.pickupLocation.address.town,county:e.pickupLocation.address.county,distance:Math.round(100*e.distance)/100,disabledaccess:e.pickupLocation.disabledAccess,parking:e.pickupLocation.parkingAvailable,openlate:e.pickupLocation.openLate,shortname:e.pickupLocation.shortName,openhours:e.pickupLocation.pickupLocationAvailability.pickupLocationOpenWindow,directions:e.pickupLocation.pickupLocationDirections},l=new google.maps.Marker({map:map,title:e.pickupLocation.address.organisation,position:o,pickupLocationCode:e.pickupLocation.pickupLocationCode,pickupLocationDetails:a});r.push(l),i.contains(o)||i.extend(o),l.addListener("click",function(){infowindow.open(map,l),infowindow.setContent(SetupInfoWindow(l))});var s=(""!=e.pickupLocation.address.organisation?e.pickupLocation.address.organisation+",":"")+(""!=e.pickupLocation.address.property?e.pickupLocation.address.property+",":"")+(""!=e.pickupLocation.address.street?e.pickupLocation.address.street+",":"")+(""!=e.pickupLocation.address.locality?e.pickupLocation.address.locality+",":"")+(""!=e.pickupLocation.address.postcode?e.pickupLocation.address.postcode+",":"")+(""!=e.pickupLocation.address.county?e.pickupLocation.address.county+",":"")+e.pickupLocation.address.town;g_mapCodeToDetail[e.pickupLocation.pickupLocationCode]=s,g_mapCodeToMarker[e.pickupLocation.pickupLocationCode]=l;var c="<option value='"+e.pickupLocation.pickupLocationCode+"'"+($("#idDPDPickupDefault").val()===e.pickupLocation.pickupLocationCode?" selected":"")+">"+s+"</option>";$("#idPickupSelect").append(c)}),google.maps.event.trigger(map,"resize"),map.fitBounds(i),$("#idPickupSelect").show(),SelChangePickupLocations(),HideLoadingDialog()}function SelectPickupLocation(e){e.preventDefault();var t=g_SelectedMarker;t&&($("#idPickupSelect").val(t.pickupLocationCode),$("input#idDPDPickupLocation").val(g_mapCodeToDetail[t.pickupLocationCode]),$("#idMapBtn").text("Selected"),$("#idMapBtn").prop("disabled",!0))}function SelChangePickupLocations(){var e=$("#idPickupSelect").val(),t=g_mapCodeToMarker[e];t&&($("input#idDPDPickupLocation").val(g_mapCodeToDetail[t.pickupLocationCode]),google.maps.event.trigger(t,"click"),$("#idMapBtn").text("Selected"),$("#idMapBtn").prop("disabled",!0))}function ShippingTypeChanged(e){switch(e){case"1":$("#map").hide(),$("#idPickupSelect").hide(),$("#idDeliveryDateFields").hide(),$("#lstClass").prop("disabled",!1),$("#lstClass > option").each(function(){$(this).attr("data-ship2shop")?$(this).prop("disabled",!0):$(this).prop("disabled",!1)}),$("#idSelectPickupLabel").hide(),$("#lstClass").children("option:enabled").eq(0).prop("selected",!0);break;case"2":$("#map").hide(),$("#idPickupSelect").hide(),$("#lstClass").prop("disabled",!1),SetupDeliveryDateList(),FilterClassList(),$("#idDeliveryDateFields").show(),$("#idSelectPickupLabel").hide();break;case"3":$("#idDeliveryDateFields").hide(),void 0===g_mapPickupLocationsJSON.data&&void 0===g_mapPickupLocationsJSON.error?(ShowLoadingDialog(),g_mapAJAXActions.GetDPDPickupLocations=SetupDPDPickupOptions,AddAJAXCall("GetDPDPickupLocations"),AJAXCall()):($("#map").show(),$("#idPickupSelect").show(),SelChangePickupLocations()),$("#lstClass > option").each(function(){if($(this).attr("data-ship2shop"))return $(this).prop("disabled",!1),$("#lstClass").val(this.value),$("#lstClass").prop("disabled",!0),!1}),$("#idSelectPickupLabel").show()}}function SetupDeliveryDateList(){var e=new Date,t,r,i,n,o,a,l=6==e.getDay()||0==e.getDay(),s=5==e.getDay(),c=e.getHours()<12;if($("#idDeliveryDate").empty(),l||s&&!c){var d=1;switch(e.getDay()){case 0:d=2;break;case 6:d=3;break;case 5:d=4}e.setDate(e.getDate()+d)}else c?e.setDate(e.getDate()+1):e.setDate(e.getDate()+2);for(var u=0;u<g_nMaxDays;u++)r=aDaysOfWeek[e.getDay()],i=aMonths[e.getMonth()],n=e.getFullYear(),t="<option value='"+(a=(o=e.getDate())+" "+i+" "+n)+"'"+($("#idDPDDateDefault").val()===a?" selected":"")+">"+r+" "+o+" "+i+", "+n+"</option>",$("#idDeliveryDate").append(t),e.setDate(e.getDate()+1)}function FilterClassList(){var e=new Date($("#idDeliveryDate").val());console.log(e.getDay());var t=(new Date).getHours()<12,r=e.getDay()<6&&e.getDay()>0;$("#lstClass > option").each(function(){var t=!1;switch($(this).attr("data-filter")){case"w":$(this).prop("disabled",!r);break;case"st":$(this).prop("disabled",6!=e.getDay());break;case"sn":$(this).prop("disabled",0!=e.getDay());break;default:$(this).prop("disabled",!0)}return!0}),$("#lstClass").children("option:enabled").eq(0).prop("selected",!0)}function SetupInfoWindow(e){var t=e.pickupLocationDetails,r=Array(7),n="";for(i=0;i<t.openhours.length;i++){if(n="",void 0!=r[t.openhours[i].pickupLocationOpenWindowDay]){var o=r[t.openhours[i].pickupLocationOpenWindowDay],a=o.substr(6);n=t.openhours[i].pickupLocationOpenWindowStartTime===a?o.substr(0,5)+"-"+t.openhours[i].pickupLocationOpenWindowEndTime:r[t.openhours[i].pickupLocationOpenWindowDay]+"|"+t.openhours[i].pickupLocationOpenWindowStartTime+"-"+t.openhours[i].pickupLocationOpenWindowEndTime}else n=t.openhours[i].pickupLocationOpenWindowStartTime+"-"+t.openhours[i].pickupLocationOpenWindowEndTime;r[t.openhours[i].pickupLocationOpenWindowDay]=n}var l='<div id="locationInfo"><table style="line-height:1.3"><tr><td><strong>'+t.shortname+"</strong><br>"+(""!=t.property?t.property+"<br>":"")+(""!=t.street?t.street+"<br>":"")+(""!=t.locality?t.locality+"<br>":"")+(""!=t.town?t.town+"<br>":"")+(""!=t.county?t.county+"<br>":"")+t.postcode+"<br>";return l+="Distance:"+t.distance+" miles<br>Car Parking:"+(t.parking?"Yes":"No")+"<br>Disabled Access:"+(t.disabledaccess?"Yes":"No")+"<br>",""!=t.directions&&(l+="Additional directions:"+t.directions+"<br>"),l+="</td><td>",l+="<strong>Normal opening hours:&nbsp;</strong><br>Mon:&nbsp;"+(void 0!=r[1]?r[1]:"Closed")+"<br>Tue:&nbsp;"+(void 0!=r[2]?r[2]:"Closed")+"<br>Wed:&nbsp;"+(void 0!=r[3]?r[3]:"Closed")+"<br>Thu:&nbsp;"+(void 0!=r[4]?r[4]:"Closed")+"<br>Fri:&nbsp;"+(void 0!=r[5]?r[5]:"Closed")+"<br>",void 0!=r[6]&&(l+="Sat:&nbsp;"+r[6]+"<br>"),void 0!=r[7]&&(l+="Sun:&nbsp;"+r[7]+"<br>"),l+="</td></tr></table>",l+="<strong>Latitude:</strong>"+e.position.lat().toFixed(5)+" | <strong>Longitude:</strong>"+e.position.lng().toFixed(5)+"<br>",l+='<div align="center"><button class="btn btn-primary" id="idMapBtn" onclick="SelectPickupLocation(event)">Select</button></div></div>',g_SelectedMarker=e,l}function SetDefaultShippingType(){ShippingTypeChanged($("input[name=DPDShippingType]:checked").val())}/***************************************************************
*
* ActinicSearch.js	-	utility functions for search functionality
*
* Copyright (c) 2012-2014 SellerDeck Limited
*
****************************************************************/
var g_bIsDebugging=!1,g_ErrorCode={TAG:1,LOGIC:2,IO:3,UNDEFINED:4};function ShowError(e,t){var r="";switch(t){case g_ErrorCode.TAG:r="Tag not found error";break;case g_ErrorCode.LOGIC:r="Logical error";break;case g_ErrorCode.IO:r="Input output error";break;case g_ErrorCode.UNDEFINED:r="Variable undefined error";break;default:r="Unknown error"}var i="Error: "+r+"\nMessage: "+e;g_bIsDebugging&&console.log(i)}function GetIEVersion(){var e=0;return/MSIE (\d+\.\d+);/.test(navigator.userAgent)&&(e=new Number(RegExp.$1)),e}function GetArrayIndex(e,t){if(Array.prototype.indexOf)return e.indexOf(t);for(var r=e.length,i=0;i<r;i++)if(e[i]===t)return i;return-1}function InsertSort(e){for(var t=1;t<e.length;t++){for(var r=e[t],i=t;e[i-1]>r;)e[i]=e[i-1],--i;e[i]=r}return e}function IsPreview(){return 0==window.location.href.indexOf("file://")}function EscapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function AutoSuggest(e){var t=500,r=!1,i,n=new Array,o=new Array,a={},l="",s=0,c={ENTER:13,ESC:27,SPACE:32,LEFTARROW:37,UP:38,RIGHTARROW:39,DOWN:40};if("undefined"!=typeof pg_sSearchScript&&e){"Quick Search"===e.value&&(e.value="");var d=document.createElement("div"),u=findPosX(e),p=findPosY(e);p+=e.offsetHeight,d.style.left=u+"px",d.style.top=p+"px";var g=document.createElement("ul");g.style.display="none",d.className="sf_suggestion",g.style.width=e.offsetWidth+"px",d.appendChild(g),e.parentNode.appendChild(d),e.onblur=function(){d.parentNode===e.parentNode&&e.parentNode.removeChild(d)},e.onkeypress=function(t){return e.AS_getKeyCode(t)==c.ENTER&&"none"!=g.style.display&&0!=s&&(e.AS_selectList(),s=0),!0},e.onkeyup=function(t){switch(e.AS_getKeyCode(t)){case c.LEFTARROW:case c.RIGHTARROW:case c.ENTER:return!1;case c.ESC:e.value="",s=0,e.AS_clearList();break;case c.UP:e.AS_navList("up");break;case c.DOWN:e.AS_navList("down");break;default:""==e.value?e.AS_clearList():(e.AS_clearTimer(),e.AS_setTimer(500))}},e.AS_getListItems=function(){var t=new Array,r=new Array,i={},o,s=pg_sSearchValidWordCharacters;s=s.replace(/([\^\$\.\*\+\?\=\!\:\|\\\/\(\)\[\]\{\}])/g,"\\$1");var c=new RegExp("[^"+s+"]"),d=e.value.split(c),u="";r.length=0;for(var p=0;p<d.length;p++)d[p]&&r.push(d[p]);var g=e.AS_getChangedSearchWord(r);if(u=g[g.length-1],g.length=0,void 0!==u){var m=new ajaxObject(pg_sSearchScript);m.callback=function(n){if(""!==n){try{i=n.parseJSON()}catch(e){return}0!=i.count?(t=i.words,e.value.length>0?(e.AS_createList(t,r,u,!0),l=u):e.AS_clearList()):u&&(l=u,t.push(u),a[u]="",e.AS_createList(t,r,u,!1))}};var f="ACTION=MATCH&TEXT="+u;IsHostMode()&&(f+="&SHOP="+pg_sShopID),m.update(f,"GET"),n=r,e.AS_clearTimer()}},e.AS_getChangedSearchWord=function(t){var r=new Array;if(t.length>0)for(var i=0;i<t.length;i++)e.AS_findFromArray(n,t[i])?o.push(t[i]):r.push(t[i]);return r},e.AS_createList=function(t,r,i,n){if(e.AS_resetList(),t.length>0){for(var o=0;o<t.length;o++){var a=document.createElement("li");a.className="notselected";var l=document.createElement("a");l.href="javascript:void(0);",l.m_nIndex=o+1;var c=i+"<b>"+t[o].substr(i.length)+"</b>";l.innerHTML=n?c:"<strike>"+c+"</strike>",a.m_nIndex=o+1,a.onmouseover=function(){e.AS_navListItem(this.m_nIndex)},l.onmousedown=function(){return s=this.m_nIndex,e.AS_selectList(this.m_nIndex),!1},a.appendChild(l),g.setAttribute("tabindex","-1"),g.appendChild(a)}g.style.display="block"}else e.AS_clearList()},e.AS_resetList=function(){for(var e=g.getElementsByTagName("li"),t=e.length,r=0;r<t;r++)g.removeChild(e[0])},e.AS_navList=function(t){s+="down"==t?1:-1;var r=g.getElementsByTagName("li");s<1&&(s=r.length),s>r.length&&(s=1),e.AS_navListItem(s)},e.AS_navListItem=function(e){s=e;for(var t=g.getElementsByTagName("li"),r=0;r<t.length;r++)t[r].className=r==s-1?"selected":"notselected"},e.AS_selectList=function(){for(var t=g.getElementsByTagName("li")[s-1].getElementsByTagName("a")[0].innerHTML.replace(/(<strike>(.*)<\/strike>)|(<[^>]+>)/g,""),r="",i=0;i<n.length;i++)void 0===a[n[i]]&&(n[i]===l?r+=t+" ":r+=n[i]+" ");e.value=r,e.AS_clearList()},e.AS_clearList=function(){g&&(g.style.display="none",selectedIndex=0),n.length=0},e.AS_getKeyCode=function(e){var t;if(!e)var e=window.event;return e.keyCode&&(t=e.keyCode),t},e.AS_findFromArray=function(e,t){for(var r=0;r<e.length;r++)if(e[r]==t)return!0;return!1},e.AS_setTimer=function(t){r||(i=setTimeout(e.AS_getListItems,t),r=!0)},e.AS_clearTimer=function(){r&&(clearTimeout(i),r=!1)}}}function AddAutoSuggest(){if(!IsPreview())if("undefined"!=typeof pg_sSearchScript&&""!==pg_sSearchScript)for(var e=0;e<document.forms.length;e++)document.forms[e]&&document.forms[e].SS&&(document.forms[e].SS.setAttribute("autocomplete","off"),document.forms[e].SS.setAttribute("onfocus","AutoSuggest(this)"));else ShowError('Variable "pg_sSearchScript" undefined OR null, autosuggest may not work',g_ErrorCode.UNDEFINED)}$(document).ready(function(){AddAutoSuggest(),AddOnFilter(),CheckHashChangeEvent()});var g_eResultLayout={STD:1,TABULAR:2,UNDEFINED:3},gArrSortedProductRefs=new Array,gArrResultSet=new Array,gArrayDefinedPropertiesSorted=new Array,gArrProperty=new Array,gArrFilterGrpIdSorted=new Array,gMapObjProductDetails={},gMapPropIdDecoratedChoices={},gMapInvalidProdRefs={},gMapInvalidEmptyPermsProdRefs={},gMapPropNameToPropId={},gMapFilterGrpIdToFilterGrpName={},gMapParams={},gMapProdRefToDecProdRef={},g_sSearchResultsTemplate="",g_sListStartTemplate="",g_sListRowStartTemplate="",g_sListCellStartTemplate="",g_sListCellEndTemplate="",g_sListRowEndTemplate="",g_sListEndTemplate="",g_sResultLayout=g_eResultLayout.UNDEFINED,g_nListColCount=0,gMapAltProdToParentProductRef={},gMapProdToAltProdArray={},gMapMatchedProducts={},g_sDefinedPropertiesPattern,gMapRefStock={},gMapChildToParentProducts={};gArrSortedProductRefs.length=0,gArrResultSet.length=0;var g_nProductMinIndex=0,g_nProductMaxIndex=0,g_nCurrenPageNumber=0,g_nIEVersion=0,g_eFilterTimer={Cache:1,Server:2,UNDEFINED:3},g_hFilterTimer,g_bFilterTimerOn=!1,g_bFirstLoad=!1,g_bCacheStock=!0,g_bClearAll=!1,g_bHasPresetOptions=!1,g_bUseStorageFromClick=!1,g_bUseStorageSortPage=!1,g_bSortOrder="",g_eFilterSettings={FILTER:1,SORTORDER:2,PAGINATION:3};function AddOnFilter(){if(!IsPreview()){var e=document.forms.filter;if(void 0!==e)if("undefined"!=typeof pg_sSearchScript&&""!==pg_sSearchScript){g_nIEVersion=GetIEVersion();for(var t=document.forms.filter.elements,r=0;r<t.length;r++)"INPUT"!==t[r].tagName||"radio"!==t[r].type&&"checkbox"!==t[r].type?"INPUT"===t[r].tagName&&"submit"===t[r].type&&t[r].setAttribute("onclick",'OnFilter(this, "link", false); return false;'):t[r].setAttribute("onclick","OnFilter(this);");var i=GetSelectWithinSortForm("filter_sortorder");if(i&&i.setAttribute("onchange","OnSort(this);"),(i=GetSelectWithinSortForm("filter_sortorder_static"))&&i.setAttribute("onchange","OnSortStatic(this);"),void 0!==e){var n=document.getElementById("SearchResults");if(n)g_sSearchResultsTemplate=n.innerHTML,g_sSearchResultsTemplate=g_sSearchResultsTemplate.replace(/(<actinic:xmltemplate name=\"ImageLine\">((.*?)|(.*?(\n))+.*?)<\/actinic:xmltemplate>)/gi,""),g_sSearchResultsTemplate=g_sSearchResultsTemplate.replace(/(<script(\s*)type=\"text\/template\">([^`]*?)<\/script>)/gi,"$3"),g_sSearchResultsTemplate=g_sSearchResultsTemplate.replace(/(<sd_script)/gi,"<script"),g_sSearchResultsTemplate=g_sSearchResultsTemplate.replace(/(<\/sd_script)/gi,"</script");else{var o='Element with id "SearchResults" not found in result template, search might not work properly';ShowError(o,g_ErrorCode.TAG)}if((g_sResultLayout=GetResultLayoutUsed())===g_eResultLayout.TABULAR){var a="",l="",s="",c="",d="",u="";a=document.getElementById("S_LISTSTART"),l=document.getElementById("S_LISTROWSTART"),s=document.getElementById("S_LISTCELLSTART"),c=document.getElementById("S_LISTCELLEND"),d=document.getElementById("S_LISTROWEND"),u=document.getElementById("S_LISTEND"),a&&(g_sListStartTemplate=a.innerHTML,g_sListStartTemplate=g_sListStartTemplate.replace(/(&lt;)/gi,"<"),g_sListStartTemplate=g_sListStartTemplate.replace(/(&gt;)/gi,">")),l&&(g_sListRowStartTemplate=l.innerHTML,g_sListRowStartTemplate=g_sListRowStartTemplate.replace(/(&lt;)/gi,"<"),g_sListRowStartTemplate=g_sListRowStartTemplate.replace(/(&gt;)/gi,">")),s&&(g_sListCellStartTemplate=s.innerHTML,g_sListCellStartTemplate=g_sListCellStartTemplate.replace(/(&lt;)/gi,"<"),g_sListCellStartTemplate=g_sListCellStartTemplate.replace(/(&gt;)/gi,">")),c&&(g_sListCellEndTemplate=c.innerHTML,g_sListCellEndTemplate=g_sListCellEndTemplate.replace(/(&lt;)/gi,"<"),g_sListCellEndTemplate=g_sListCellEndTemplate.replace(/(&gt;)/gi,">")),d&&(g_sListRowEndTemplate=d.innerHTML,g_sListRowEndTemplate=g_sListRowEndTemplate.replace(/(&lt;)/gi,"<"),g_sListRowEndTemplate=g_sListRowEndTemplate.replace(/(&gt;)/gi,">")),u&&(g_sListEndTemplate=u.innerHTML,g_sListEndTemplate=g_sListEndTemplate.replace(/(&lt;)/gi,"<"),g_sListEndTemplate=g_sListEndTemplate.replace(/(&gt;)/gi,">"))}ResetSortOrder()}CacheProperties(),CacheFilterSections(),CacheDefinedPriceBands(),CachePriceBandPriceRange(),CacheDefinedChoices(),SetDefaultSelection(),SortFilterGroup(),g_bHasPresetOptions=HasPresetFilterOptions(),SetSelectionMapsFromStorage(),SetStoredPageNumber(),IsFilterCountEnabled()?OnFilter(null,null,!0):(GenerateDynamicFilterOptions(),IsFilterAsDefaultView()?OnFilter(null,null,!0):OnFilter(null,null,!1)),HideModifyStaticControls()}else ShowError(o='Variable "pg_sSearchScript" undefined OR null, filtering may not work',g_ErrorCode.UNDEFINED)}}function HasFilterStorage(){var e=SDStorage.readPage("filterSettings");return null!==e&&""!==e}function IsUseFilterStorage(){return-1!=window.location.hash.search("usestorage")}function CacheProperties(){for(var e=0;e<pg_arrayPropertyName.length;e++)if(void 0!==pg_arrayPropertyName[e]){var t=pg_arrayPropertyName[e].replace(/(&#95;)/g,"_").split(":"),r=t[0],i=(t[1]+"_"+r.substr(r.lastIndexOf("_")+1)).toUpperCase();gMapPropNameToPropId[i]=r,gMapFilterGrpIdToFilterGrpName[r]=i,gArrFilterGrpIdSorted.push(r),gArrayDefinedPropertiesSorted.push(i),gArrProperty.push(r)}InsertSort(gArrayDefinedPropertiesSorted),g_sDefinedPropertiesPattern="-"+gArrayDefinedPropertiesSorted.join("--")+"-"}function SortFilterGroup(){InsertSort(gArrFilterGrpIdSorted)}function GetSelectWithinSortForm(e){var t=document.forms[e];if(void 0!==t){var r=t.elements;if(void 0!==r)for(var i=0;i<r.length;i++)if("SELECT"===r[i].tagName)return r[i]}return null}function OnFilter(e,t,r,i){var n="",o=document.forms.filter;if(void 0!==e&&null!==e&&AppendUseStorageHash(g_eFilterSettings.FILTER),g_bUseStorageFromClick&&(ResetAllStorage(),g_bUseStorageFromClick=!1),ResetSortOrder(),void 0!==e&&null!==e&&-1!=g_nCurrenPageNumber&&SetCurrentPageNumber(0),g_bFirstLoad=!!r,g_bClearAll=!!i,g_bFirstLoad||ClearCtrlSelectionMap(),ClearURLParamCache(),ShowLoadingDialog(),n+="PAGE=DynamicFilter&",void 0!==e&&void 0!==t&&"link"===t&&!g_bFirstLoad&&"update_lnk"!==e.id&&"update_btn"!==e.id){var a="hf_"+e.name,l="";(l=document.getElementById(a))&&l.parentNode.removeChild(l);var s="";s="PR"===e.name?"hf_PR":"SX"===e.name?"hf_SX":"hf_"+e.id;var c="";g_nIEVersion<9&&0!==g_nIEVersion?c=document.createElement('<input name="'+s+'">'):(c=document.createElement("input")).name=s,c.id="hf_"+e.name,c.type="hidden",c.value=e.value,e.parentNode.appendChild(c),null!==e.parentNode&&EditLabel(GetParent("li",e))}if(ReadFilterParamsFromPage(),IsFilterCountEnabled()&&HideOptionAny(),ClearButtonHandler(),!IsFilterCountEnabled()&&!IsFilterAsDefaultView()||g_bFirstLoad){if(!g_bFirstLoad&&(g_bClearAll||GetClearButtonCount()<1))return void HideLoadingDialog();g_bFirstLoad&&g_bCacheStock&&CacheStockFilter(),n+=GetURLParam(g_bClearAll),IsHostMode()&&(n+="SHOP="+pg_sShopID+"&"),(IsFilterCountEnabled()||IsFilterAsDefaultView())&&(n+="SID="+pg_nCurrentFilterSectionID+"&"),o.Action&&(n+="Action="+o.Action.value),ClearFilterTimer(),SetFilterTimer(g_eFilterTimer.Server,n)}else ClearFilterTimer(),SetFilterTimer(g_eFilterTimer.Cache)}function ReadFilterParamsFromPage(){for(var e=document.forms.filter.elements,t=0;t<e.length;t++){var r="",i="",n="",o=!1,a="",l="",s=!1;if("INPUT"!==e[t].tagName||"checkbox"!==e[t].type&&"radio"!==e[t].type)if("INPUT"===e[t].tagName&&"hidden"===e[t].type&&"PAGE"!==e[t].name&&"FILTERPAGE"!==e[t].name&&"ACTINIC_REFERRER"!==e[t].name&&"Action"!==e[t].name&&null===e[t].name.match(/hf_/g))a=e[t].name,l=e[t].value,o=!0;else if("SELECT"===e[t].tagName)n=GetSelections(e[t]),o=!1,s=!0;else if("INPUT"===e[t].tagName&&"hidden"===e[t].type){if("hf_"===e[t].name.substr(0,3)){var c=e[t].name.substr(3,e[t].name.length);a=c.split("-")[0],l=e[t].value,"PR"===a||"SX"===a?r=l:(r=c,i=l),o=!0}}else o=!1;else!0===e[t].checked?(a=e[t].name,l=e[t].value,"SX"===a?r=l:(r=e[t].id,i=e[t].value),o=!0):o=!1;if(o){var d=encodeURIComponent(l).replace(/!|'|\(|\)|\*|%20|%C2/g,function(e){return{"!":"%21","'":"%27","(":"%28",")":"%29","*":"%2A","%20":"+","%C2":""}[e]});g_bFirstLoad||GetControlSelections(a,r,i),CacheURLParams(a,d)}}}function ClearButtonHandler(){for(var e in gMapFilters)ShowHideClearButton(IsShowClearButton(e),e)}function SetFilterTimer(e,t){g_bFilterTimerOn||(g_hFilterTimer=setTimeout(function(){e===g_eFilterTimer.Cache?FilterProductsFromCache():e===g_eFilterTimer.Server&&FilterProductsFromServer(t)},25),g_bFilterTimerOn=!0)}function ClearFilterTimer(){g_bFilterTimerOn&&(clearTimeout(g_hFilterTimer),g_bFilterTimerOn=!1)}function FilterProductsFromServer(e){if("undefined"!=typeof pg_bFilteringCacheEnabled&&0!==pg_bFilteringCacheEnabled&&(IsFilterCountEnabled()||IsFilterAsDefaultView())){var t=new XMLHttpRequest,r="AjaxProductList_"+pg_nUploadReferenceNumber+"_"+pg_nCurrentFilterSectionID+".js";try{if(t.open("GET",GetFilterCacheURL(r),!1),t.send(),200===t.status||304===t.status){var i={};try{i=t.responseText.parseJSON()}catch(t){return void GetProductListFromServer(e)}return 0!=i.ProductSearchResults.ResultCount?(gArrResultSet.length=0,gArrResultSet=i.ProductSearchResults.ResultSet,DoSort(GetSortOrder(),gArrResultSet),RetrieveProductDetails(g_nCurrenPageNumber,!0)):g_bFirstLoad&&!IsFilterAsDefaultView()||FormatResultHTML(!1,null,null,!1),void HideLoadingDialog()}}catch(e){}}GetProductListFromServer(e)}function GetProductListFromServer(e){var t=new ajaxObject(pg_sSearchScript);t.callback=function(e){if(""!==e){var t={};try{t=e.parseJSON()}catch(e){return void ShowJSONError(e)}0!=t.ProductSearchResults.ResultCount?(gArrResultSet.length=0,gArrResultSet=t.ProductSearchResults.ResultSet,DoSort(GetSortOrder(),gArrResultSet),RetrieveProductDetails(g_nCurrenPageNumber,!0)):(g_bFirstLoad&&!IsFilterAsDefaultView()||FormatResultHTML(!1,null,null,!1),HideLoadingDialog())}},t.update(e,"GET")}function FilterProductsFromCache(){if(GetClearButtonCount()<1?(ClearCtrlSelectionMap(),g_bClearAll=!0):g_bClearAll=!1,g_bClearAll&&!IsFilterAsDefaultView())return UpdateFilterCount(),void HideLoadingDialog();var e="";g_bClearAll||(e=GetFilterPatternForResult()),gArrResultSet.length=0;var t=GetFilteredProducts(e);gArrResultSet=GetDecoratedProdRefs(t),DoSort(GetSortOrder(),gArrResultSet),RetrieveProductDetails(g_nCurrenPageNumber,!0)}function GetDecoratedProdRefs(e){for(var t=new Array,r=0;r<e.length;r++){var i=e[r];void 0!==gMapProdRefToDecProdRef[i]&&t.push(gMapProdRefToDecProdRef[i])}return t}function GetFilterPatternForResult(){var e={},t="";for(var r in gMapFilterGrpIdToFilterGrpName)if(void 0!==gMapControlToSelection[r]){var i=gMapControlToSelection[r],n=new Array,o="";if("PR"===r)for(var a in i){var l=r+"_"+a;n.push(l)}else if("SX"===r){var s={};for(var a in i){s[a]="";for(var c=gMapFilters.SX[a].m_arrSubSectionIds,d=0;d<c.length;d++)-1!==GetArrayIndex(gArraySectionIDs,c[d])&&(s[c[d]]="")}for(var u in s){var l=r+"_"+u;n.push(l)}}else for(var p in i)if(void 0!==gMapControlIdChoiceName[p]){var l=r+":"+gMapControlIdChoiceName[p];n.push(l)}n.length>0&&(e[r]="(\\!"+n.join("\\!|\\!")+"\\!)")}for(var g=0;g<gArrFilterGrpIdSorted.length;g++){var m=gArrFilterGrpIdSorted[g];void 0!==e[m]&&(t.length>0&&(t+=".*"),t+=e[m])}return t}function CacheURLParams(e,t){void 0!==gMapParams[e]?gMapParams[e].push(t):(gMapParams[e]=new Array,gMapParams[e].push(t))}function ClearURLParamCache(){for(var e in gMapParams)gMapParams[e]=new Array}function GetURLParam(e){var t="",r=!1;if(e&&UpdateDefaultParams(),(IsFilterAsDefaultView()||IsFilterCountEnabled())&&g_bFirstLoad){for(var i in gMapDefCtrlSelections)void 0!==gMapParams[i]&&(gMapParams[i]=new Array,gMapParams[i].push(""));void 0!==gMapParams.PR&&(gMapParams.PR=new Array,gMapParams.PR.push("-1")),void 0!==gMapParams.SX&&(gMapParams.SX=new Array,gMapParams.SX.push("-1"))}for(var n in gMapParams){var o=gMapParams[n],a=o.length;if(0!=a)for(var l=0;l<a;l++)t+=n+"="+(s=o[l])+"&";else{var s="";"PR"!==n&&"SX"!==n||(s="-1"),t+=n+"="+s+"&"}}return t}function UpdateDefaultParams(){var e="";for(var t in gMapDefCtrlSelections){var r=t+"-"+gMapDefCtrlSelections[t],i="";void 0!==gMapControlIdChoiceName[r]&&(i=gMapControlIdChoiceName[r]);var n=encodeURIComponent(i).replace(/!|'|\(|\)|\*|%20|%C2/g,function(e){return{"!":"%21","'":"%27","(":"%28",")":"%29","*":"%2A","%20":"+","%C2":""}[e]});void 0!==gMapParams[t]&&(gMapParams[t]=new Array,gMapParams[t].push(n))}void 0!==gMapParams.PR&&(gMapParams.PR=new Array,gMapParams.PR.push("-1")),void 0!==gMapParams.SX&&(gMapParams.SX=new Array,gMapParams.SX.push("-1"))}function GetSelections(e){for(var t="",r="",i="",n=0;n<e.options.length;n++)if(!0===e.options[n].selected){var o=e.name,a=encodeURIComponent(e.options[n].value);t+=o+"="+a+"&","PR"===o||"SX"===o?r=e.options[n].value:(r=e.options[n].id,i=e.options[n].value),g_bFirstLoad||GetControlSelections(o,r,i),CacheURLParams(o,a)}return t}function ValidateMultipleListBox(e){for(var t=0,r=0;r<e.options.length;r++)!0===e.options[r].selected&&t++}function DoSort(e,t){var r=pg_sSortOrdersPrependedToProdRefs,i=e.split("_");i.push("0","0","0","0");for(var n=0;n<i.length;n++)i[n]=parseInt(i[n]);for(var o=r.split(","),n=0;n<o.length;n++)o[n]=parseInt(o[n]);var a={0:1,1:-1,2:1,3:-1,4:1,5:-1,6:1,7:-1,8:-1,9:-1},l={0:0,1:1,2:2,3:2,4:4,5:4,6:6,7:7,8:8,9:9},s=o.length,c="^";c+="([0-9]*):",c+="([i|v])";for(var d=0;d<s;d++)c+="([0-9A-Za-z?_]{2}|{[0-9A-Za-z?_]{3}|}[0-9A-Za-z?_]{4})";c+="(.*)$";var u=new RegExp(c),p={};gArrSortedProductRefs.length=0;for(var n=0;n<t.length;n++){var g=t[n].match(u);if(g){var m=g[s+3],f=m.split(":");2==f.length&&(m=f[0],gMapAltProdToParentProductRef[m]=f[1]),gArrSortedProductRefs[n]=m,g[1]=String("0000000000"+g[1]).substr(-10,10),p[m]=g,"i"===g[2]&&(gMapInvalidProdRefs[m]=""),((IsFilterCountEnabled()||IsFilterAsDefaultView())&&g_bFirstLoad||!IsFilterCountEnabled())&&(gMapProdRefToDecProdRef[m]=t[n])}else ShowError("Logical error occurred during sorting",g_ErrorCode.LOGIC)}for(var v={},S=0;S<s;S++)v[o[S]]=S+3;v[0]=s+3,v[1]=1;var h=new Array(a[i[0]],a[i[1]],a[i[2]],a[i[3]]),P=new Array(v[l[i[0]]],v[l[i[1]]],v[l[i[2]]],v[l[i[3]]]);gArrSortedProductRefs.sort(function(e,t){for(var r,i,n=0;n<4;n++){if(r=p[e][P[n]],i=p[t][P[n]],r<i)return-1*h[n];if(r>i)return h[n]}return 0})}function RetrieveProductDetails(e,t){var r=!1,i=!1;ShowLoadingDialog(),SetCurrentPageNumber(e),StoreSettings();var n=GetProdRefsOfNonCachedProductDetails(gArrSortedProductRefs);n.length>0&&(r=!0),i=n.length===gArrSortedProductRefs.length;var o=!1;if((t||r)&&(o=!0),r)if("undefined"!=typeof pg_bFilteringCacheEnabled&&0!==pg_bFilteringCacheEnabled&&(IsFilterCountEnabled()||IsFilterAsDefaultView())){var a=new XMLHttpRequest,l="AjaxProductDetails_"+pg_nUploadReferenceNumber+"_"+pg_nCurrentFilterSectionID+".js";if(a.open("GET",GetFilterCacheURL(l),!1),a.send(),200===a.status||304===a.status){var s={};try{if(0==(s=a.responseText.parseJSON()).ProductDetails.ProductInfoCount||s.ProductDetails.ProductInfoCount!==n.length)return void UpdateProductDetailsFromServer(n,i,o)}catch(e){return void UpdateProductDetailsFromServer(n,i,o)}UpdateProductDetails(s,o)}else UpdateProductDetailsFromServer(n,i,o)}else UpdateProductDetailsFromServer(n,i,o);else if(0!==gArrSortedProductRefs.length){var c=IsFilterAsDefaultView(),d=HasFilterStorage();if(!g_bFirstLoad||c||d){if((c||IsFilterCountEnabled())&&t){var u=GetFilterPatternForResult();gArrResultSet.length=0;var p=GetFilteredProducts(u);gArrResultSet=GetDecoratedProdRefs(p),DoSort(GetSortOrder(),gArrResultSet)}FormatResultHTML(!0,gArrSortedProductRefs,e,o)}else UpdateFilterCount()}else g_bFirstLoad&&!IsFilterAsDefaultView()||FormatResultHTML(!0,null,null,o)}function UpdateProductDetailsFromServer(e,t,r){for(var i="",n=0;n<e.length;n++)void 0!==e[n]&&(i+=e[n],n+1<e.length&&(i+="_"));var o={},a=new ajaxObject(pg_sSearchScript);if(a.callback=function(e){if(""!==e){var t={};try{t=e.parseJSON()}catch(e){return void ShowJSONError(e)}UpdateProductDetails(t,r)}},i="PAGE=DynamicFilter&DPR="+i,IsSearchBySubSection()&&g_bFirstLoad){for(var l="",s=0;s<gArraySectionIDs.length;s++)l+=gArraySectionIDs[s],s+1<gArraySectionIDs.length&&(l+="_");""!==l&&(i+="&SIDS="+l)}t&&(i+="&SID="+pg_nCurrentFilterSectionID),IsHostMode()&&(i+="&SHOP="+pg_sShopID),a.update(i,"POST")}function ShowJSONError(e){void 0!==e&&e.length>500&&(e=e.substring(0,500)+"...");var t="The filter operation returned a script error. Please try again, and contact us if the error persists. The error was: \n\n["+e+"]";alert(t)}function UpdateProductDetails(e,t){var r=e.ProductDetails.ProductInfoCount;if(void 0!==e.SectionDetails&&0!=e.SectionDetails.SectionInfoCount&&CacheSectionDetails(e.SectionDetails.SectionInfoSet),0!=r){var i=new Array;CacheProductDetails(i=e.ProductDetails.ProductInfoSet),CacheProductDetailsWithFullPermutation(t)}}function UpdateProductDetailsHelper(e){var t=HasFilterStorage();g_bFirstLoad&&IsFilterCountEnabled()&&(g_bHasPresetOptions||t)&&(CalculateCount(!0),RemoveFilterWithZeroCount(),ClearFilterCounts());var r=IsFilterAsDefaultView();if(!g_bFirstLoad||r||t){if(r||IsFilterCountEnabled()){var i=GetFilterPatternForResult();gArrResultSet.length=0;var n=GetFilteredProducts(i);gArrResultSet=GetDecoratedProdRefs(n),DoSort(GetSortOrder(),gArrResultSet)}FormatResultHTML(!0,gArrSortedProductRefs,g_nCurrenPageNumber,e)}else UpdateFilterCount(),HideLoadingDialog()}function CacheProductDetailsWithFullPermutation(e){var t=GetProdRefForFullPermutation();if(""!=t){var r=new Array,i=new ajaxObject(pg_sSearchScript);i.callback=function(t){""!==t?(UpdateProductDetailsWithFullPermutation(t),UpdateProductDetailsHelper(e)):UpdateProductDetailsHelper(e)},sParams="ACTION=FULLPERMLIST&PRODREF="+t,i.update(sParams,"GET",!1)}else UpdateProductDetailsHelper(e)}function SetSelectionMapsFromStorage(){if(HasFilterStorage()){var e=SDStorage.readPage("filterSettings");ClearCtrlSelectionMap(),arrSettings=e.split(",");for(var t=0;t<arrSettings.length;t++){var r=arrSettings[t].split(":"),i=r[0],n=r[1];if(void 0===gMapControlToSelection[i]?(gMapControlToSelection[i]={},gMapControlToSelection[i][n]=""):gMapControlToSelection[i][n]="","PR"===i||"SX"===i?gMapCtrlSelections[arrSettings[t]]=!0:gMapCtrlSelections[n]=!0,void 0!==gMapFilterGrpIdToFilterGrpName[i]&&void 0!==gMapControlIdChoiceName[n]){var o=(gMapFilterGrpIdToFilterGrpName[i]+":"+gMapControlIdChoiceName[n]).toUpperCase();gMapPropCtrlSelections[o]=!0,void 0===gMapPropIdToSelections[i]&&(gMapPropIdToSelections[i]=new Array),-1==GetArrayIndex(gMapPropIdToSelections[i],o)&&(gMapPropIdToSelections[i].push(o),gMapPropIdToSelections[i].length>0&&InsertSort(gMapPropIdToSelections[i]))}}}}function HasPresetFilterOptions(){var e=!1;for(var t in gMapFilters)if("PR"!==t&&"SX"!==t)for(var r=gMapFilters[t].m_mapChoices,i=1;void 0!==r[i];){var n=r[i].m_sChoiceID;void 0!==gMapCtrlSelections[n]&&""!==gMapFilters[t].m_mapChoices[i].m_sChoiceName&&(e=!0),i++}return e}function FormatResultHTML(e,t,r,i){i&&FilterProductsBasedOnPerms();var n=document.getElementById("ContentPage");n&&(n.style.display="none");var o=document.getElementById("filter_results_area");o&&(o.style.cssText="display:block");var a=document.getElementById("search_results_list");a&&(a.style.cssText="display:block");var l=document.getElementById("SortBy");if(l&&(l.style.cssText="display:block"),ReloadCarousels(),!e||0===gArrSortedProductRefs.length)return UpdateResultContent("No matching products were found."),UpdateResultSummary(!1),UpdatePaginatedLinks(!1),i&&UpdateFilterCount(),gArrSortedProductRefs.length=0,gArrResultSet.length=0,void HideLoadingDialog();g_sResultLayout===g_eResultLayout.TABULAR?FormatTabularResult(r):FormatStandardResult(r),i&&UpdateFilterCount()}function FormatStandardResult(e){var t="",r="",i=GetPaginatedProducts(gArrSortedProductRefs,e);0==i.length&&(i=GetPaginatedProducts(gArrSortedProductRefs,e=0));for(var n=0;n<i.length;n++){var o=new ProductDetails;void 0!==(o=GetProductDetails(i[n]))&&(t+='<div class="std-product-details">'+(r=ReplaceResultTemplates(o,n))+"</div>")}UpdateResultContent(t),UpdateResultSummary(!0);var a=CreateSearchResultPageLinks();a[1]<2?UpdatePaginatedLinks(!1):UpdatePaginatedLinks(!0,a[0]),HideLoadingDialog()}function FormatTabularResult(e){var t="",r="",i="",n=GetPaginatedProducts(gArrSortedProductRefs,e);0==n.length&&(n=GetPaginatedProducts(gArrSortedProductRefs,e=0));for(var o=!1,a=0;a<n.length;a++){var l=new ProductDetails;void 0!==(l=GetProductDetails(n[a]))&&(r=ReplaceResultTemplates(l,a),g_nListColCount>1?((a+1)%g_nListColCount==0?(i+=g_sListCellStartTemplate+r+g_sListCellEndTemplate,o=!0):(i+=g_sListCellStartTemplate+r+g_sListCellEndTemplate,o=!1),o?(t+=g_sListRowStartTemplate+i+g_sListRowEndTemplate,i=""):a+1===n.length&&(t+=g_sListRowStartTemplate+i+g_sListRowEndTemplate)):t+=g_sListRowStartTemplate+g_sListCellStartTemplate+r+g_sListCellEndTemplate+g_sListRowEndTemplate)}t=g_sListStartTemplate+t+g_sListEndTemplate;var s=CreateSearchResultPageLinks();s[1]<2?UpdatePaginatedLinks(!1):UpdatePaginatedLinks(!0,s[0]),UpdateResultContent(t),HideLoadingDialog()}function ReplaceResultTemplates(objProductDetails,nProdCount){var nProductCount=g_nProductMinIndex+1+nProdCount,sResultTemplate=g_sSearchResultsTemplate;for(sResultTemplate=ReplaceProductDetailstemplate(objProductDetails,sResultTemplate,nProductCount);sResultTemplate.match(/<Actinic:ScriptFunctionCall[^>]*>([^`]*?)<\/Actinic:ScriptFunctionCall>/i);){var arrMatch=sResultTemplate.match(/<Actinic:ScriptFunctionCall[^>]*>([^`]*?)<\/Actinic:ScriptFunctionCall>/i);if(arrMatch[1]){var scriptResult="";try{scriptResult=eval(arrMatch[1])}catch(e){console.log("Error in evaluating the statement: "+arrMatch[1])}sResultTemplate=sResultTemplate.replace(/<Actinic:ScriptFunctionCall[^>]*>([^`]*?)<\/Actinic:ScriptFunctionCall>/i,scriptResult)}}return sResultTemplate}function ReplaceProductDetailstemplate(e,t,r){var i=FormatPrices(e.m_sPrice);t=t.replace(/(<Actinic:S_ITEM><\/Actinic:S_ITEM>)/gi,r);var n="";if(IsLoggedIn()&&"undefined"!=typeof pg_sCustomerAccountsCGIURL&&""!==pg_sCustomerAccountsCGIURL){var o="";IsHostMode()&&(o="SHOP="+pg_sShopID+"&"),n='<a href="'+pg_sCustomerAccountsCGIURL+"?"+o+"PRODUCTPAGE="+e.m_sAnchor+'">'}else n='<a href="'+e.m_sAnchor+'">';var a="("+e.m_sSection+")&nbsp;",l=i+"&nbsp;",s=e.m_sDescription+"&nbsp;";if(t=t.replace(/((&lt;|<)Actinic:S_PNAME(&gt;|>)(&lt;|<)\/Actinic:S_PNAME(&gt;|>))/gi,e.m_sName),t=t.replace(/(<Actinic:S_SNAME><\/Actinic:S_SNAME>)/gi,a),t=t.replace(/(<Actinic:S_LINK><\/Actinic:S_LINK>)/gi,n),t=t.replace(/(<Actinic:S_PRAWPRICE><\/Actinic:S_PRAWPRICE>)/gi,e.m_sPrice),t=t.replace(/(<Actinic:S_PRICE><\/Actinic:S_PRICE>)/gi,l),t=t.replace(/(<Actinic:S_DESCR><\/Actinic:S_DESCR>)/gi,s),t=t.replace(/(<Actinic:S_STOCK><\/Actinic:S_STOCK>)/gi,e.m_nStockLevel),""==e.m_sImage&&"undefined"!=typeof pg_sDefaultProductImage&&(e.m_sImage=pg_sDefaultProductImage),""!==e.m_sImage){var c=/(<div[^>]*ResultImage[^>]*>([^`]*?)<\/div>)/gim,d=new Array;if(null!=(d=c.exec(t))){var u=d[2],p="";"undefined"!=typeof pg_nProductImageWidth&&pg_nProductImageWidth>0&&(p+='width="'+pg_nProductImageWidth+'" '),"undefined"!=typeof pg_nProductImageHeight&&pg_nProductImageHeight>0&&(p+='height="'+pg_nProductImageHeight+'"'),u=(u=(u=u.replace(/=\"\"/gi,"")).replace(/netquotevar:thumbnailsize/gi,p)).replace(/\bNETQUOTEVAR:THUMBNAIL\b/gi,e.m_sImage),t=t.replace(c,u)}}else t=t.replace(/(<div[^>]*ResultImage[^>]*>([^`]*?)<\/div>)/gi,"");if(pg_bShowProductFeedback){var c=/(<div[^>]*ResultFeefoLogo[^>]*>([^`]*?)<\/div>)/gim,d=new Array;if(null!=(d=c.exec(t))){var g=d[2];g=g.replace(/((&lt;|<)Actinic:S_PRODREF(&gt;|>)(&lt;|<)\/Actinic:S_PRODREF(&gt;|>))/gi,e.m_sProdRef),t=t.replace(c,g)}}else t=t.replace(/(<div[^>]*ResultFeefoLogo[^>]*>([^`]*?)<\/div>)/gi,"");return t=UpdateUDPVariableTemplates(e,t)}function UpdateUDPVariableTemplates(e,t){for(var r in e.m_mapUDPs)if(r){var i='(((&lt;)|(<))actinic:template[^((&gt;)|(>))]*name=((&quot;)|("))'+EscapeRegExp(DecodeHtmlEntity(r))+'((&quot;)|("))((&gt;)|(>))((&lt;)|(<))/actinic:template((&gt;)|(>)))';t=t.replace(new RegExp(i,"ig"),e.m_mapUDPs[r])}return t=t.replace(/(<actinic:template[^>]*name[^>]*>([^`]*?)<\/actinic:template>)/gi,"")}var DecodeHtmlEntity=function(e){return e.replace(/&#(\d+);/g,function(e,t){return"39"==t||"34"==t?"\\"+String.fromCharCode(t):String.fromCharCode(t)})},EncodeHtmlEntity=function(e){for(var t=[],r=e.length-1;r>=0;r--)t.unshift(["&#",e[r].charCodeAt(),";"].join(""));return t.join("")};function ProductDetails(){this.m_sProdRef="",this.m_sSid="",this.m_sName="",this.m_sDescription="",this.m_sSection="",this.m_sImage="",this.m_sAnchor="",this.m_sPrice="",this.m_mapProperties={},this.m_mapCompToPermutation={},this.m_sDecSection="",this.m_sDecPriceBand="",this.m_sDecFilterString="",this.m_mapDecChoices={},this.m_mapUDPs={},this.m_nStockLevel,this.m_bFullPermutation=!1}function ProductProperties(){this.m_mapChoices={},this.m_sPropID="",this.m_bShow=!1,this.m_bHideAlways=!1}function FilterChoiceDetails(){this.m_sChoiceID="",this.m_sChoiceName="",this.m_nChoiceCount=0,this.m_bHideAlways=!1}function SetProductDetails(e,t){e.m_sProdRef=t[0],e.m_sSid=t[1],e.m_sName=t[2],e.m_sDescription=t[3],e.m_sSection=t[4],e.m_sImage=t[5],e.m_sAnchor=t[6],e.m_sPrice=t[7];var r=t[8],i=t[9],n=t[10],o=t[11];e.m_nStockLevel=t[14];var a=n.split(",");if(""!=i)for(var l=i.split("|"),s=0;s<l.length;s++){var c=l[s];""!=c&&(c=DecodeHtmlEntity(c),void 0===gMapChildToParentProducts[c]&&(gMapChildToParentProducts[c]=new Array),gMapChildToParentProducts[c].push(e.m_sProdRef))}for(var d=new Array,u=0;u<a.length;u++){var p=a[u].split("!"),g=p[0],m="S_"+g;if(void 0!==gMapFilterGrpIdToFilterGrpName[m]){e.m_mapProperties[m]=new ProductProperties;for(var f=1;f<p.length;f++)SetProductProperties(e,m,d,g,p[f].replace(/(^\s*)|(\s*$)/gi,""))}}var v=!1;if(""!==r)for(var S=r.split(","),h=0;h<S.length;h++){var P=/(<(.*)>(.*))/gim.exec(S[h]);if(null!==P&&""!==P[2]){var C=P[2].toUpperCase().split(":");InsertSort(C);for(var I=C.join(":"),_=0;_<C.length;_++)void 0===gMapPropNameToPropId[C[_]]&&(C.splice(_,1),_--);var A=P[3];if(""===A){void 0===e.m_mapCompToPermutation[I]&&(e.m_mapCompToPermutation[I]="EMPTY",v=!0);continue}for(var T=A.toUpperCase().split("|"),y=0;y<T.length;y++){for(var R=T[y].split("!!"),b=0;b<R.length;b++){var E=R[b].split("!");void 0===gMapPropNameToPropId[E[0]]&&(R.splice(b,1),b--)}if(0!==R.length){InsertSort(R);var D=("\\-"+R.join("\\-.*\\-")+"\\-").split("!"),M=new RegExp(D.join("\\:"),"i");void 0!==e.m_mapCompToPermutation[I]&&"EMPTY"!==e.m_mapCompToPermutation[I]&&"OSTOCK"!==e.m_mapCompToPermutation[I]||(e.m_mapCompToPermutation[I]=new Array),e.m_mapCompToPermutation[I].push(M)}}}}else e.m_mapCompToPermutation.EMPTY="";if(v&&void 0!==gMapInvalidProdRefs[e.m_sProdRef]&&v&&(gMapInvalidEmptyPermsProdRefs[e.m_sProdRef]=0),IsFilterCountEnabled()||IsFilterAsDefaultView()){var L=GetPriceBand(parseInt(e.m_sPrice));e.m_sDecPriceBand=L;var N="PR_"+L;d.push(N),e.m_sDecSection=e.m_sSid;var O="SX_"+e.m_sSid;d.push(O)}InsertSort(d);var F="!"+d.join("!!")+"!";e.m_sDecFilterString=F;for(var w=o.split(","),k=0;k<w.length;k++){var B=w[k].split("|");e.m_mapUDPs[B[0]]=B[1]}}function SetProductProperties(e,t,r,i,n){if(objProductProperties=e.m_mapProperties[t],objProductProperties.m_sPropID=i,"&#33;"!==n)for(var o=n.split("&#33;"),a=0;a<o.length;a++){var l=o[a].replace(/(^\s*)|(\s*$)/gi,"").replace(/(&#32;)/gi," ");if(objProductProperties.m_mapChoices[l]=a,""!==l){var s="S_"+i+":"+l;r.push(s),e.m_mapDecChoices[s]=""}}else objProductProperties.m_mapChoices[0]=""}function OnSortStatic(e){var t=e.selectedIndex,r=GetSelectWithinSortForm("filter_sortorder");r&&(r.selectedIndex=t),OnSort(e)}function OnSort(e){var t=document.forms.filter_sortorder,r=e.selectedIndex,i=e.options[r].value;g_bSortOrder=i,AppendUseStorageHash(g_eFilterSettings.SORTORDER),-1!=g_nCurrenPageNumber&&SetCurrentPageNumber(0),ShowLoadingDialog(),UpdateSortOrder(i),DoSort(i,gArrResultSet),RetrieveProductDetails(g_nCurrenPageNumber,!1)}function OnPagination(e){AppendUseStorageHash(g_eFilterSettings.PAGINATION),RetrieveProductDetails(e,!1),$(function(){$("html, body").animate({scrollTop:$("#SortBy").offset().top},"slow")})}function AppendUseStorageHash(e){if(SDStorage.isSupported()){var t=!1;""==window.location.hash?(window.location.hash="#usestorage",t=!0):""!=window.location.hash&&-1!=window.location.hash.indexOf("usestorage")?t=!1:(window.location.hash="#usestorage",t=!0),e==g_eFilterSettings.FILTER?g_bUseStorageFromClick=t:g_bUseStorageSortPage=t}}function StoreSettings(){if(IsUseFilterStorage()){var e="",t=new Array,r=0,i=!1;for(var n in gMapControlToSelection){var o=gMapControlToSelection[n];for(var a in o){var l=n+":"+a;t[r++]=l,i=!0}}i&&(e=t.join(",")),SDStorage.writePage("filterSettings",e),SDStorage.writePage("sortOrder",g_bSortOrder),SDStorage.writePage("pageNumber",g_nCurrenPageNumber)}}function ResetAllStorage(){ResetStorage(g_eFilterSettings.FILTER),ResetStorage(g_eFilterSettings.SORTORDER),ResetStorage(g_eFilterSettings.PAGINATION)}function ResetStorage(e){switch(e){case g_eFilterSettings.FILTER:SDStorage.writePage("filterSettings","");break;case g_eFilterSettings.SORTORDER:g_bSortOrder=pg_sDefaultSortOrder,SDStorage.writePage("sortOrder",g_bSortOrder);break;case g_eFilterSettings.PAGINATION:g_nCurrenPageNumber=0,SDStorage.writePage("pageNumber",g_nCurrenPageNumber)}}function GetProductDetails(e){return gMapObjProductDetails[e]}function IsProductDetailsCached(e){var t=!1;return void 0!==gMapObjProductDetails[e]&&(t=!0),t}function GetPaginatedProducts(e,t){var r=new Array;0===pg_nSearchResultsLimit||-1===t?(g_nProductMinIndex=0,g_nProductMaxIndex=e.length+1):(g_nProductMinIndex=t*pg_nSearchResultsLimit,g_nProductMaxIndex=(t+1)*pg_nSearchResultsLimit);for(var i=g_nProductMinIndex;i<g_nProductMaxIndex;i++)void 0!==e[i]&&r.push(e[i]);return r}function GetParent(e,t){var r=t.parentNode;if(void 0!==r&&null!=r&&null!=r.tagName)for(;r.tagName!==e.toUpperCase();)r=r.parentNode;return r}function EditLabel(e){for(var t=e.childNodes,r=e.parentNode.childNodes,i=0;i<r.length;i++)if(null!==r[i])for(var n=r[i].childNodes,o=0;o<n.length;o++)null!==n[o]&&"LABEL"==n[o].nodeName&&(n[o].style.cssText="");for(var a=0;a<t.length;a++)null!==t[a]&&"LABEL"==t[a].nodeName&&(t[a].style.cssText="color:red;")}function UpdateResultSummary(e){var t="";if(null!==(t=document.getElementById("search_results_list")))if(e){var r=CalculateMinMaxSearchResult(),i="<Actinic:S_SUMMARY>Results "+r[0]+"-"+r[1]+" of "+gArrSortedProductRefs.length+"</Actinic:S_SUMMARY>";t.innerHTML=t.innerHTML.replace(/(<Actinic:S_SUMMARY>(.*?)<\/Actinic:S_SUMMARY>)/gi,i)}else{var i="<Actinic:S_SUMMARY></Actinic:S_SUMMARY>";t.innerHTML=t.innerHTML.replace(/(<Actinic:S_SUMMARY>(.*?)<\/Actinic:S_SUMMARY>)/gi,i)}else ShowError("Tag with the id 'search_results_list' is not found in Filter Results Layout, result summary might not be updated properly",g_ErrorCode.TAG)}function CalculateMinMaxSearchResult(){var e=g_nProductMinIndex+1,t=0;return t=g_nProductMaxIndex>gArrSortedProductRefs.length?gArrSortedProductRefs.length:g_nProductMaxIndex,[e,t]}function UpdateResultContent(e){var t=document.getElementById("FilterResultElements"),r=document.getElementById("StaticResults");if(r&&(r.innerHTML=""),g_sResultLayout===g_eResultLayout.TABULAR){var i="";(i=document.getElementById("product-list"))&&(i.innerHTML=e)}else t?(t.innerHTML=e,t.style.display="block"):ShowError('Tag with the id "SearchResults" is not found in filter option layout, filter might not work properly',g_ErrorCode.TAG)}function CreateSearchResultPageLinks(){var e=document.getElementById("PaginationLinksTemplate");if(e){var t=e.innerHTML.replace(/(\n)/g,""),r={nMaxVisibleLinks:"<Actinic:PAGINATION_VISIBLELINKS>(.*?)</Actinic:PAGINATION_VISIBLELINKS>",sHeader:"<Actinic:PAGINATION_HEADER>(.*?)</Actinic:PAGINATION_HEADER>",sShowFirstLink:"<Actinic:PAGINATION_SHOWFIRSTURL>(.*?)</Actinic:PAGINATION_SHOWFIRSTURL>",sFirstPageURL:"<Actinic:PAGINATION_FIRSTPAGEURL>(.*?)</Actinic:PAGINATION_FIRSTPAGEURL>",sPrevPageURL:"<Actinic:PAGINATION_PREVPAGEURL>(.*?)</Actinic:PAGINATION_PREVPAGEURL>",sLinksPageURL:"<Actinic:PAGINATION_LINKSPAGEURL>(.*?)</Actinic:PAGINATION_LINKSPAGEURL>",sNextPageURL:"<Actinic:PAGINATION_NEXTPAGEURL>(.*?)</Actinic:PAGINATION_NEXTPAGEURL>",sLastPageURL:"<Actinic:PAGINATION_LASTPAGEURL>(.*?)</Actinic:PAGINATION_LASTPAGEURL>",sFullPageURL:"<Actinic:PAGINATION_FULLPAGEURL>(.*?)</Actinic:PAGINATION_FULLPAGEURL>"};for(var i in r){var n=new RegExp(r[i],"gi").exec(t);if(n){var o=n[1];o=(o=o.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">"),r[i]=o}else r[i]=""}}var a="",l=pg_nSearchResultsLimit,s=parseInt(r.nMaxVisibleLinks);0===pg_bShowFullPageInPagination&&-1===g_nCurrenPageNumber&&(g_nCurrenPageNumber=0),l>gArrSortedProductRefs.length&&(l=gArrSortedProductRefs.length);var c=0;if(0!==l&&(c=Math.floor(gArrSortedProductRefs.length/l),gArrSortedProductRefs.length%l!=0&&c++),c<2)return[a,c];if(0!==pg_bShowFullPageInPagination&&-1===g_nCurrenPageNumber){var d="javascript:OnPagination(0)";return a=(f=r.sShowFirstLink).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d),[a,c]}if(a=r.sHeader,0!==g_nCurrenPageNumber){var d="javascript:OnPagination(0)";a+=f=(f=r.sFirstPageURL).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d),f=r.sPrevPageURL,d="javascript:OnPagination("+(g_nCurrenPageNumber-1)+")",a+=f=f.replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d)}0===s&&(s=c);var u=0;g_nCurrenPageNumber>-1&&(u=Math.floor(g_nCurrenPageNumber/s));var p=u*s,g=p+s;g>c&&(g=c);for(var m=p;m<=g;m++){var d="javascript:OnPagination("+m+")",f=r.sLinksPageURL,v,S=m+1;if(m<g)m===g_nCurrenPageNumber?(v=" <b>"+S+"</b> ",f=f.replace(/<A(.*)<\/A>/gi,v)):f=(f=f.replace(/<ACTINIC:PAGINATION_INDEX><\/ACTINIC:PAGINATION_INDEX>/gi,S)).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d),a+=f;else if(m<c){var h="...";a+=f=(f=f.replace(/<ACTINIC:PAGINATION_INDEX><\/ACTINIC:PAGINATION_INDEX>/gi,"...")).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d)}}if(c!==g_nCurrenPageNumber+1&&(d="javascript:OnPagination("+(g_nCurrenPageNumber+1)+")",a+=f=(f=r.sNextPageURL).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d),d="javascript:OnPagination("+(c-1)+")",a+=f=(f=r.sLastPageURL).replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d)),0!==pg_bShowFullPageInPagination){f=r.sFullPageURL,d="javascript:OnPagination(-1)";var P=gArrSortedProductRefs.length;a+=f=(f=f.replace(/<ACTINIC:PAGINATION_URLLINK><\/ACTINIC:PAGINATION_URLLINK>/gi,d)).replace(/<ACTINIC:PAGINATION_PRODUCTCOUNT><\/ACTINIC:PAGINATION_PRODUCTCOUNT>/gi,P)}return[a,c]}function UpdatePaginatedLinks(e,t){var r=document.getElementById("filter_pagination_links_top");r&&(r.innerHTML=e?t:"");var i=document.getElementById("filter_pagination_links_bottom");i&&(i.innerHTML=e?t:"")}function UpdateSortOrder(e){var t=document.forms.filter;if(void 0!==t)for(var r=t.elements,i=0;i<r.length;i++)"INPUT"===r[i].tagName&&"SO"===r[i].name&&(r[i].value=e)}function GetPaginationDetails(){var e=0,t=0;return 0!==(e=pg_nSearchResultsLimit>gArrSortedProductRefs.length?gArrSortedProductRefs.length:pg_nSearchResultsLimit)&&(t=Math.floor(gArrSortedProductRefs.length/e),gArrSortedProductRefs.length%e!=0&&t++),[e,t]}function GetSortOrder(){var e="",t=document.forms.filter;return void 0!==t&&t.SO&&(e=t.SO.value),""===e&&"undefined"!=typeof pg_sDefaultSortOrder&&(e=pg_sDefaultSortOrder),e}function ResetSortOrder(){var e=document.forms.filter,t="";(t=SDStorage.readPage("sortOrder"))?(g_bSortOrder=t,e.SO.value=t):void 0!==e&&"undefined"!=typeof pg_sDefaultSortOrder&&e.SO&&(g_bSortOrder=pg_sDefaultSortOrder,e.SO.value=pg_sDefaultSortOrder);var r=document.forms.filter_sortorder,i="";void 0!==e&&(i=r.getElementsByTagName("option"));for(var n in i)i[n].value===g_bSortOrder?i[n].selected="selected":i[n].selected=""}function SetCurrentPageNumber(e){g_nCurrenPageNumber=e}function SetStoredPageNumber(){var e=SDStorage.readPage("pageNumber");g_nCurrenPageNumber=null!=e?e:0}function ShowLoadingDialog(){var e=document.getElementById("loading-dialog");e&&(e.style.display="block")}function HideLoadingDialog(){var e=document.getElementById("loading-dialog");e&&(e.style.display="none")}function GetProdRefsOfNonCachedProductDetails(e){var t=new Array;if(t.length=0,0!==e.length)for(var r=0;r<e.length;r++)IsProductDetailsCached(e[r])||t.push(e[r]);return t}function CacheProductDetails(e){for(var t=0;t<e.length;t++){var r=e[t].ProductInfo,i=r[0];IsOutOfStock(i,r[12],r[13])||(gMapObjProductDetails[i]=new ProductDetails,SetProductDetails(gMapObjProductDetails[i],r))}}function IsOutOfStock(e,t,r){var i=IsOutOfStockFromStockFilter(e);if(IsExcludeOutOfStockItems()&&t)if(null==i){if(r<=0)return!0}else if(i)return!0;return!1}var gMAX_INT="9007199254740992",gMapPriceBandPriceRange={},gMapFilters={},gMapDefCtrlSelections={},gArrayPriceIDs=new Array,gArraySectionIDs=new Array,gMapControlIdChoiceName={},gMapPropIdToBtnClearStatus={},gMapCtrlSelections={},gMapPropCtrlSelections={},gMapPropIdToSelections={},gMapControlToSelection={},g_eControlType={BUTTON:1,LIST:2,LINK:4,UNDEFINED:5};function UpdateFilterCount(){IsFilterCountEnabled()&&"undefined"!=typeof pg_arrayPriceBandValues&&"undefined"!=typeof pg_arrayProperties&&(CalculateCount(!1),!g_bFirstLoad||g_bHasPresetOptions||HasFilterStorage()||RemoveFilterWithZeroCount(),GenerateDynamicFilterOptions(),ClearFilterCounts())}function CacheDefinedPriceBands(){if("undefined"!=typeof pg_arrayPriceBandValues){gMapFilterGrpIdToFilterGrpName.PR="PR",gArrFilterGrpIdSorted.push("PR"),gMapFilters.PR={},gMapFilters.PR.m_bShow=!1;for(var e=0;e<pg_arrayPriceBandValues.length;e++){var t=pg_arrayPriceBandValues[e].split(":"),r=t[1].split("-"),i=t[0];gArrayPriceIDs.push(i),gMapFilters.PR[i]=new PriceBandDetails,e===pg_arrayPriceBandValues.length-1&&(r[1]=gMAX_INT),SetPriceDetails(gMapFilters.PR[i],r[0],r[1])}}else ShowError("Global variables 'pg_arrayPriceBandValues' is not defined, filtering functionality might not be available",g_ErrorCode.UNDEFINED)}function PriceBandDetails(){this.m_nMin=0,this.m_nMax=0,this.m_nCount=0,this.m_bHideAlways=!1}function SetPriceDetails(e,t,r){e.m_nMin=parseInt(t),e.m_nMax=parseInt(r)}function GetPriceBand(e){var t="-1",r=gMapFilters.PR;for(var i in r){var n=r[i].m_nMin,o=r[i].m_nMax;if(e>=n&&e<=o){t=i;break}}return t}function GenerateDynamicFilterOptions(){CreateFilterSectionOptions(),CreateFilterPriceBandOptions(),CreateFilterPropertyOptions()}function ClearFilterCounts(){for(var e in gMapFilters)if("PR"===e){var t=gMapFilters[e];for(var r in t)t[r].m_nCount=0;gMapFilters[e].m_bShow=!1}else if("SX"===e){var i=gMapFilters[e];for(var n in i)i[n].m_nCumulativeCount=0,i[n].m_nCount=0;gMapFilters[e].m_bShow=!1}else{var o=gMapFilters[e].m_mapChoices;for(var a in o)o[a].m_nChoiceCount=0,gMapFilters[e].m_bShow=!1}}function CacheDefinedChoices(){if("undefined"!=typeof pg_arrayProperties){for(var e=0;e<pg_arrayProperties.length;e++)if(void 0!==pg_arrayProperties[e]){var t=pg_arrayProperties[e].split(":"),r=t[0].replace(/(&#95;)/g,"_"),i=r.split("-"),n=i[0],o=i[1],a=t[1];if(gMapControlIdChoiceName[r]=a,void 0===gMapPropIdDecoratedChoices[n]&&(gMapPropIdDecoratedChoices[n]=new Array),""!==a){var l=gMapFilterGrpIdToFilterGrpName[n]+":"+a;l.toUpperCase(),-1==GetArrayIndex(gMapPropIdDecoratedChoices[n],l)&&(gMapPropIdDecoratedChoices[n].push(l),InsertSort(gMapPropIdDecoratedChoices[n]))}void 0===gMapFilters[n]&&(gMapFilters[n]=new ProductProperties),void 0===gMapFilters[n].m_mapChoices[o]&&(gMapFilters[n].m_mapChoices[o]=new FilterChoiceDetails),void 0!==gMapFilters[n].m_mapChoices[o]&&SetDefinedChoices(gMapFilters[n].m_mapChoices[o],n,r,a)}}else ShowError("Global variables 'pg_arrayProperties' is not defined, filtering functionality might not be available",g_ErrorCode.UNDEFINED)}function SetDefinedChoices(e,t,r,i){e.m_sChoiceID=r,e.m_sChoiceName=i,gMapFilters[t].m_bShow=!1}function CachePriceBandPriceRange(){if("undefined"!=typeof pg_arrayPriceBandRange)for(var e=0;e<pg_arrayPriceBandRange.length;e++){var t=pg_arrayPriceBandRange[e].split(":"),r=t[0];gMapPriceBandPriceRange[r]=t[1]}}function CreateFilterPriceBandOptions(){var e="",t="";if(e=document.getElementById("FilterPriceBandOptions"),t=document.getElementById("PriceOptionTemplate"),null!==e&&null!==t){var r=!1;if(IsHideChoiceWithZeroResults()&&IsFilterCountEnabled()||IsFilterCountEnabled()&&g_bFirstLoad){var i=document.getElementById("PR");gMapFilters.PR.m_bShow?(i.style.display="block",r=!1):(i.style.display="none",r=!0)}var n=t.outerHTML,o=t.innerHTML,a="",l="",s=GetLayoutType(o),c="",d="",u="",p="";if(null!==(p=document.getElementById("PriceOptionTemplateSelect"))){c=p.outerHTML;var g=p.innerHTML,m=g.toLowerCase().indexOf("</act:select>");m>0&&(d=(d=g.substring(0,m)).replace(/(ACT:SELECT)/gi,"select"),u="</select>")}var f="",v="",S="",h="",P="",C="";if(null!==(f=document.getElementById("PriceOptionTemplateStartUL"))&&(v=f.innerHTML,S=f.outerHTML,v=(v=v.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">")),null!==(h=document.getElementById("PriceOptionTemplateEndUL"))&&(P=h.innerHTML,C=h.outerHTML,P=(P=P.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">")),!r&&""!==c&&IsDropDownListBox(c)){a=(a=(a=(a=o).replace(/(&lt;Actinic:PriceIndex&gt;&lt;\/Actinic:PriceIndex&gt;)/gi,"-1")).replace(/(<Actinic:PriceIndex><\/Actinic:PriceIndex>)/gi,"-1")).replace(/(<Actinic:PriceBand><\/Actinic:PriceBand>)/gi,"Any");var I="";void 0!==gMapCtrlSelections[b="PR:-1"]&&(I="selected"),l+=a=(a=(a=(a=(a=a.replace(/(ActinicDisabledCtrl=\"\")/gi,"")).replace(/(ActinicDisabledStyle=\"\")/gi,"")).replace(/(ActinicCustomSelection=\"\")/gi,I)).replace(/(ACT:OPTION)/gi,"option")).replace(/(<Actinic:HiddentInput><\/Actinic:HiddentInput>)/gi,"")}var _=0,A=1;a="";for(var T=0;T<gArrayPriceIDs.length;T++){var y=gArrayPriceIDs[T];if(void 0!==gMapFilters.PR[y]&&!gMapFilters.PR[y].m_bHideAlways&&(sHiddenInput="",_=gMapFilters.PR[y].m_nCount,!IsFilterCountEnabled()||IsHideChoiceWithZeroResults()&&_>0||!IsHideChoiceWithZeroResults())){A++,a=(a=(a=o).replace(/(&lt;Actinic:PriceIndex&gt;&lt;\/Actinic:PriceIndex&gt;)/gi,gArrayPriceIDs[T])).replace(/(<Actinic:PriceIndex><\/Actinic:PriceIndex>)/gi,gArrayPriceIDs[T]);var R=gMapPriceBandPriceRange[gArrayPriceIDs[T]].replace(/(&nbsp;)/gi," ");IsFilterCountEnabled()&&(R+=" ("+_+")"),a=a.replace(/(<Actinic:PriceBand><\/Actinic:PriceBand>)/gi,R);var b="PR:"+gArrayPriceIDs[T],I="",E="",D="";void 0!==gMapCtrlSelections[b]&&("LIST"===s?I="selected":"LINKS"===s?(I='style="color:red"',sHiddenInput='<input type="hidden" value="'+gArrayPriceIDs[T]+'" name="hf_PR" id="hf_PR"/>'):I="checked"),IsFilterCountEnabled()&&!IsHideChoiceWithZeroResults()&&("LIST"===s?_>0||(D='disabled="disabled"'):"LINKS"===s?_>0||(D='disabled="disabled"',E='style="color:gray;cursor:default"'):_>0||(D='disabled="disabled"',E='style="color:gray"')),l+=a=(a=(a=(a=(a=a.replace(/(ActinicDisabledCtrl=\"\")/gi,D)).replace(/(ActinicDisabledStyle=\"\")/gi,E)).replace(/(ACT:OPTION)/gi,"option")).replace(/(ActinicCustomSelection=\"\")/gi,I)).replace(/(<Actinic:HiddentInput><\/Actinic:HiddentInput>)/gi,sHiddenInput)}}r?(d="",v="",l="",P="",u=""):d=(d=d.replace(/(&lt;Actinic:ListCount&gt;&lt;\/Actinic:ListCount&gt;)/gi,A)).replace(/(<Actinic:ListCount><\/Actinic:ListCount>)/gi,A),e.innerHTML=c+n+S+C+d+v+l+P+u}else ShowError('Tag with the id "FilterPriceBandOptions" OR "PriceOptionTemplate" is not found in filter option layout, filter count might not work for price band',g_ErrorCode.TAG)}function CreateFilterPropertyOptions(){for(var e=0;e<gArrProperty.length;e++)if(void 0!==gArrProperty[e]){var t=gArrProperty[e],r="FilterPropertyOptions_"+t,i="PropOptionTemplate_"+t,n="",o="";if(n=document.getElementById(r),o=document.getElementById(i),null===n||null===o){ShowError("Tag with the id"+r+" OR "+i+"is not found in filter option layout, filter count might not work for the property ID "+t,g_ErrorCode.TAG);continue}var a=o.innerHTML,l=o.outerHTML,s=GetLayoutType(a),c="",d="",u=!1;if(void 0!==gMapFilters[t]){var p=gMapFilters[t].m_mapChoices,g=1;if(IsHideChoiceWithZeroResults()&&IsFilterCountEnabled()||IsFilterCountEnabled()&&g_bFirstLoad||gMapFilters[t].m_bHideAlways){var m=document.getElementById(t);g_bFirstLoad&&gMapFilters[t].m_bHideAlways||g_bFirstLoad&&!gMapFilters[t].m_bShow&&IsHideChoiceWithZeroResults()||!g_bFirstLoad&&!gMapFilters[t].m_bShow?(m.style.display="none",n.style.display="none",u=!0):(m.style.display="block",n.style.display="block",u=!1)}var f="",v="",S="",h="",P="",C="PropOptionTemplateSelect_"+t;if(null!==(P=document.getElementById(C))&&(f=P.innerHTML,v=P.outerHTML,!u)){var I=f.toLowerCase().indexOf("</act:select>");I>0&&(S=(S=(S=(S=f.substring(0,I)).replace(/(ACT:SELECT)/gi,"select")).replace(/(&lt;Actinic:FilterPropValueName&gt;&lt;\/Actinic:FilterPropValueName&gt;)/gi,t)).replace(/(<Actinic:FilterPropValueName><\/Actinic:FilterPropValueName>)/gi,t),h="</select>")}var _=IsDropDownListBox(f),A="",T="",y="",R="",b="",E="";null!==(A=document.getElementById("PropOptionTemplateStartUL_"+t))&&(T=A.innerHTML,y=A.outerHTML,T=(T=T.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">")),null!==(R=document.getElementById("PropOptionTemplateEndUL_"+t))&&(b=R.innerHTML,E=R.outerHTML,b=(b=b.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">"));for(var D=0;void 0!==p[g];){var M=!1;if(""===p[g].m_sChoiceName){if(!_||u){g++;continue}M=!0}if(""===p[g].m_sChoiceID||p[g].m_bHideAlways&&!M)g++;else{var L="",N=p[g].m_nChoiceCount;if(!IsFilterCountEnabled()||IsHideChoiceWithZeroResults()&&N>0||!IsHideChoiceWithZeroResults()||M){D++,c=(c=(c=a).replace(/(&lt;Actinic:FilterPropValueName&gt;&lt;\/Actinic:FilterPropValueName&gt;)/gi,t)).replace(/(<Actinic:FilterPropValueName><\/Actinic:FilterPropValueName>)/gi,t);var O=p[g].m_sChoiceName;c=(c=c.replace(/(&lt;Actinic:FilterPropValue&gt;&lt;\/Actinic:FilterPropValue&gt;)/gi,O)).replace(/(<Actinic:FilterPropValue><\/Actinic:FilterPropValue>)/gi,O);var F="",w="",k="";void 0===gMapCtrlSelections[t+"-"+g]||g_bClearAll||("LIST"===s?F="selected":"LINKS"===s?(F='style="color:red"',L='<input type="hidden" value="'+p[g].m_sChoiceName+'" name="hf_'+p[g].m_sChoiceID+'" id="hf_'+t+'"/>'):F="checked"),!IsFilterCountEnabled()||IsHideChoiceWithZeroResults()||M||("LIST"===s?N>0||(w='disabled="disabled"'):"LINKS"===s?N>0||(w='disabled="disabled"',k='style="color:gray;cursor:default"'):N>0||(w='disabled="disabled"',k='style="color:gray"')),c=(c=(c=(c=(c=(c=c.replace(/(ACT:OPTION)/gi,"option")).replace(/(ActinicDisabledCtrl=\"\")/gi,w)).replace(/(ActinicDisabledStyle=\"\")/gi,k)).replace(/(ActinicCustomSelection=\"\")/gi,F)).replace(/(&lt;Actinic:FilterPropChoiceID&gt;&lt;\/Actinic:FilterPropChoiceID&gt;)/gi,p[g].m_sChoiceID)).replace(/(<Actinic:FilterPropChoiceID><\/Actinic:FilterPropChoiceID>)/gi,p[g].m_sChoiceID);var B=p[g].m_sChoiceName;M&&(B="Any"),IsFilterCountEnabled()&&!M&&(B+=" ("+p[g].m_nChoiceCount+")"),d+=c=(c=(c=c.replace(/(&lt;Actinic:FilterPropText&gt;&lt;\/Actinic:FilterPropText&gt;)/gi,B)).replace(/(<Actinic:FilterPropText><\/Actinic:FilterPropText>)/gi,B)).replace(/(<Actinic:HiddentInput><\/Actinic:HiddentInput>)/gi,L)}g++}}1===D&&D++,S=(S=S.replace(/(&lt;Actinic:ListCount&gt;&lt;\/Actinic:ListCount&gt;)/gi,D)).replace(/(<Actinic:ListCount><\/Actinic:ListCount>)/gi,D),n.innerHTML="",n.innerHTML=y+E+v+l+S+T+d+b+h}}}function GetLayoutType(e){var t;return t=e.match(/(ACT:OPTION)/gim)?"LIST":e.match(/(type=\"submit\")/gim)||e.match(/(type=submit)/gim)?"LINKS":"BUTTONS"}function IsDropDownListBox(e){var t=!1,r=e.match(/(ACT:SELECT(.*)size\s*=\s*["\']?([^"\' ]*)["\' ]\s*)/i);return r?void 0!==r[3]&&"1"===r[3]&&(t=!0):e.match(/(ACT:SELECT)/i)&&(t=!0),t}function GetControlSelections(e,t,r){var i="";if("SX"===e||"PR"===e)i=e+":"+t,"-1"!==t&&(void 0===gMapControlToSelection[e]?(gMapControlToSelection[e]={},gMapControlToSelection[e][t]=""):gMapControlToSelection[e][t]="");else{if(""!==(i=t)&&""!==r&&void 0!==gMapControlIdChoiceName[i]){var n=gMapControlIdChoiceName[i],o=i.split("-")[0],a=(gMapFilterGrpIdToFilterGrpName[o]+":"+n).toUpperCase();void 0===gMapPropIdToSelections[o]&&(gMapPropIdToSelections[o]=new Array),-1==GetArrayIndex(gMapPropIdToSelections[o],a)&&(gMapPropIdToSelections[o].push(a),gMapPropIdToSelections[o].length>0&&InsertSort(gMapPropIdToSelections[o])),void 0===gMapPropCtrlSelections[a]&&(gMapPropCtrlSelections[a]=!0)}""!==i&&""!==e&&""!==r&&(void 0===gMapControlToSelection[e]?(gMapControlToSelection[e]={},gMapControlToSelection[e][i]=""):gMapControlToSelection[e][i]="")}""!==i&&(gMapCtrlSelections[i]=!0)}function ClearCtrlSelectionMap(){gMapCtrlSelections={},gMapControlToSelection={},gMapPropCtrlSelections={},gMapPropIdToSelections={}}function IsFilterCountEnabled(){return!("undefined"==typeof pg_bEnableFilterCount||!pg_bEnableFilterCount)}function GetResultLayoutUsed(){var e=g_eResultLayout.UNDEFINED,t="";return(t=document.getElementById("S_LISTCOLCOUNT"))?(e=g_eResultLayout.TABULAR,g_nListColCount=parseInt(t.innerHTML)):e=g_eResultLayout.STD,e}function IsHostMode(){return!("undefined"==typeof pg_sShopID||!pg_sShopID)}function SetDefaultSelection(){if(GetControlSelections("PR","-1"),GetControlSelections("SX","-1"),"undefined"!=typeof pg_arrayDefaultProperties)for(var e=0;e<pg_arrayDefaultProperties.length;e++)if(void 0!==pg_arrayDefaultProperties[e]&&null!==pg_arrayDefaultProperties[e]){var t=pg_arrayDefaultProperties[e].replace(/(&#95;)/g,"_"),r=t.split("-");gMapDefCtrlSelections[r[0]]=r[1],GetControlSelections(r[0],t,gMapControlIdChoiceName[t])}}function CheckHashChangeEvent(){if(!IsPreview()){var e=GetIEVersion();if(e<8&&0!==e){var t="";function r(){window.location.hash!==t&&(HashChangeHandler(),t=window.location.hash)}r(),window.setInterval(r,500)}else AddEvent(window,"hashchange",HashChangeHandler),window.location.hash&&HashChangeHandler()}}function HashChangeHandler(){if(g_bUseStorageSortPage)g_bUseStorageSortPage=!1;else{if(ResetSortOrder(),SetStoredPageNumber(),-1!=window.location.hash.search("usestorage"))return SetSelectionMapsFromStorage(),void(IsFilterCountEnabled()?OnFilter(null,null,!0):(GenerateDynamicFilterOptions(),IsFilterAsDefaultView()?OnFilter(null,null,!0):OnFilter(null,null,!1)));var e="";if(e=document.getElementById("filter_results_area")){var t="";(t=document.getElementById("ContentPage"))&&(t.style.display="block"),e.style.display="none",""!=window.location.hash&&(window.location.hash=window.location.hash),ShowSectionContent(),HideAllClearButtons(),ResetStorage(g_eFilterSettings.FILTER)}}}function IsHideChoiceWithZeroResults(){return"undefined"!=typeof pg_bHideChoiceWithZeroResults&&1===pg_bHideChoiceWithZeroResults}function CreateClearButton(e){var t=document.getElementById(e+"-clear-button");if(t)t.style.cssText="display:block";else{var r=document.getElementById(e);if(r){var i="<a href='javascript:ClearFilterOptions(\""+e+'");\' id="'+e+'-clear-button" class="clear-button">Clear</a>';r.innerHTML=r.innerHTML+i}}}function ShowHideClearButton(e,t){var r=document.getElementById(t+"-clear-button");r?e?(r.style.cssText="display:block",gMapPropIdToBtnClearStatus[t]=!0):(r.style.cssText="display:none",gMapPropIdToBtnClearStatus[t]=!1):e&&(CreateClearButton(t),gMapPropIdToBtnClearStatus[t]=!0),GetClearButtonCount()<1&&ShowSectionContent()}function GetClearButtonCount(){var e=0;for(sPropId in gMapPropIdToBtnClearStatus)!0===gMapPropIdToBtnClearStatus[sPropId]&&e++;return e}function ClearFilterOptions(e){GetClearButtonCount()<2?OnClearAllOptions():(ClearFilterChoices(e),OnFilter())}function ClearFilterChoices(e){if(void 0!==document.forms.filter)for(var t=document.forms.filter.elements,r=0;r<t.length;r++){var i=GetControlType(t[r]);if(e===t[r].name&&i!==g_eControlType.UNDEFINED&&(ResetSelectionCheck(i,t[r],e),i===g_eControlType.LINK))break}}function GetControlType(e){var t=g_eControlType.UNDEFINED,r=e.type,i=e.tagName;return"INPUT"===i?"checkbox"===r||"radio"===r?t=g_eControlType.BUTTON:"submit"===r&&(t=g_eControlType.LINK):"SELECT"===i&&(t=g_eControlType.LIST),t}function ResetSelectionCheck(e,t,r){switch(e){case g_eControlType.BUTTON:"-1"==t.value&&""==t.value||(t.checked=!1);break;case g_eControlType.LIST:for(var i=0;i<t.options.length;i++)"-1"==t.options[i].value&&""==t.options[i].value||(t.options[i].selected=!1);break;case g_eControlType.LINK:var n=document.getElementById("hf_"+r);if(n){var o=n.value,a="";"PR"===r?a="lbl_"+o:"SX"===r?a+="lbl_SX_"+o:a="lbl_"+n.name.split("hf_")[1];var l=document.getElementById(a);l&&(l.style.cssText=""),n.parentNode.removeChild(n)}}}function HideModifyStaticControls(){var e=document.getElementById("update_btn");if(e){var t=e.parentNode;t&&t.parentNode.removeChild(t)}var r=document.getElementById("update_lnk");r&&(r.setAttribute("onclick","javascript:OnClearAllOptions(); return false;"),r.value="Clear All")}function OnClearAllOptions(){GetClearButtonCount()<1||(ShowSectionContent(),HideAllClearButtons(),ResetStorage(g_eFilterSettings.FILTER),-1!=g_nCurrenPageNumber&&ResetStorage(g_eFilterSettings.PAGINATION))}function ShowSectionContent(){if(!IsFilterAsDefaultView()){var e=document.getElementById("filter_results_area");e&&(e.style.cssText="display:none");var t=document.getElementById("ContentPage");t&&(t.style.cssText="display:block"),ReloadCarousels()}}function HideAllClearButtons(){ClearCtrlSelectionMap();for(var e in gMapPropIdToBtnClearStatus)!0===gMapPropIdToBtnClearStatus[e]&&ClearFilterChoices(e);OnFilter(null,null,!1,!0)}function CacheFilterSections(){if("undefined"!=typeof pg_arrayFilterSections){gMapFilterGrpIdToFilterGrpName.SX="SX",gArrFilterGrpIdSorted.push("SX"),gMapFilters.SX={},gMapFilters.SX.m_bShow=!1;for(var e=0;e<pg_arrayFilterSections.length;e++)if(void 0!==pg_arrayFilterSections[e]&&null!==pg_arrayFilterSections[e]){var t=pg_arrayFilterSections[e].split(":"),r=t[0];gMapFilters.SX[r]=new SectionDetails,gMapFilters.SX[r].m_sSectionName=t[1],gArraySectionIDs.push(r)}}}function SectionDetails(){this.m_sSectionName="",this.m_nCount=0,this.m_nCumulativeCount=0,this.m_arrSubSectionIds=new Array,this.m_bHideAlways=!1}function CreateFilterSectionOptions(){var e="",t="";if(e=document.getElementById("FilterSectionOptions"),t=document.getElementById("SectionOptionTemplate"),null!==e&&null!==t){var r=!1;if(IsHideChoiceWithZeroResults()&&IsFilterCountEnabled()||IsFilterCountEnabled()&&g_bFirstLoad){var i=document.getElementById("SX");gMapFilters.SX.m_bShow?(i.style.display="block",r=!1):(i.style.display="none",r=!0)}var n=t.outerHTML,o=t.innerHTML,a="",l="",s=GetLayoutType(o),c="",d="",u="",p="";if(null!==(p=document.getElementById("SectionOptionTemplateSelect"))){c=p.outerHTML;var g=p.innerHTML,m=g.toLowerCase().indexOf("</act:select>");m>0&&(d=(d=g.substring(0,m)).replace(/(ACT:SELECT)/gi,"select"),u="</select>")}var f="",v="",S="",h="",P="",C="";if(null!==(f=document.getElementById("SectionOptionTemplateStartUL"))&&(v=f.innerHTML,S=f.outerHTML,v=(v=v.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">")),null!==(h=document.getElementById("SectionOptionTemplateEndUL"))&&(P=h.innerHTML,C=h.outerHTML,P=(P=P.replace(/(&lt;)/gi,"<")).replace(/(&gt;)/gi,">")),!r&&""!==c&&IsDropDownListBox(c)){a=(a=(a=(a=o).replace(/(&lt;Actinic:SectionIndex&gt;&lt;\/Actinic:SectionIndex&gt;)/gi,"-1")).replace(/(<Actinic:SectionIndex><\/Actinic:SectionIndex>)/gi,"-1")).replace(/(<Actinic:SectionName><\/Actinic:SectionName>)/gi,"Any");var I="";void 0!==gMapCtrlSelections[R="SX:-1"]&&(I="selected"),l+=a=(a=(a=(a=(a=a.replace(/(ActinicDisabledCtrl=\"\")/gi,"")).replace(/(ActinicDisabledStyle=\"\")/gi,"")).replace(/(ActinicCustomSelection=\"\")/gi,I)).replace(/(ACT:OPTION)/gi,"option")).replace(/(<Actinic:HiddentInput><\/Actinic:HiddentInput>)/gi,"")}for(var _=0,A=1,T=0;T<gArraySectionIDs.length;T++)if(sHiddenInput="",void 0!==gMapFilters.SX[gArraySectionIDs[T]]&&!gMapFilters.SX[gArraySectionIDs[T]].m_bHideAlways&&(_=gMapFilters.SX[gArraySectionIDs[T]].m_nCumulativeCount,!IsFilterCountEnabled()||IsHideChoiceWithZeroResults()&&_>0||!IsHideChoiceWithZeroResults())){A++,a=(a=(a=o).replace(/(&lt;Actinic:SectionIndex&gt;&lt;\/Actinic:SectionIndex&gt;)/gi,gArraySectionIDs[T])).replace(/(<Actinic:SectionIndex><\/Actinic:SectionIndex>)/gi,gArraySectionIDs[T]);var y=gMapFilters.SX[gArraySectionIDs[T]].m_sSectionName;IsFilterCountEnabled()&&(y+=" ("+_+")"),a=a.replace(/(<Actinic:SectionName><\/Actinic:SectionName>)/gi,y);var R="SX:"+gArraySectionIDs[T],I="",b="",E="";void 0!==gMapCtrlSelections[R]&&("LIST"===s?I="selected":"LINKS"===s?(I='style="color:red"',sHiddenInput='<input type="hidden" value="'+gArraySectionIDs[T]+'" name="hf_SX" id="hf_SX"/>'):I="checked"),IsFilterCountEnabled()&&!IsHideChoiceWithZeroResults()&&("LIST"===s?_>0||(E='disabled="disabled"'):"LINKS"===s?_>0||(E='disabled="disabled"',b='style="color:gray;cursor:default"'):_>0||(E='disabled="disabled"',b='style="color:gray"')),l+=a=(a=(a=(a=(a=a.replace(/(ActinicDisabledCtrl=\"\")/gi,E)).replace(/(ActinicDisabledStyle=\"\")/gi,b)).replace(/(ACT:OPTION)/gi,"option")).replace(/(ActinicCustomSelection=\"\")/gi,I)).replace(/(<Actinic:HiddentInput><\/Actinic:HiddentInput>)/gi,sHiddenInput)}r?(d="",v="",l="",P="",u=""):d=(d=d.replace(/(&lt;Actinic:ListCount&gt;&lt;\/Actinic:ListCount&gt;)/gi,A)).replace(/(<Actinic:ListCount><\/Actinic:ListCount>)/gi,A),e.innerHTML=c+n+S+C+d+v+l+P+u}else ShowError('Tag with the id "FilterSectionOptions" OR "SectionOptionTemplate" is not found in filter option layout, filter count might not work for departments',g_ErrorCode.TAG)}function IsSearchBySubSection(){return"undefined"!=typeof pg_bSearchBySubSection&&1===pg_bSearchBySubSection}function CacheSectionDetails(e){for(var t=0;t<e.length;t++){var r=e[t].SectionID;void 0!==gMapFilters.SX[r]?gMapFilters.SX[r].m_arrSubSectionIds=e[t].SubSectionIDs:(gMapFilters.SX[r]=new SectionDetails,gMapFilters.SX[r].m_arrSubSectionIds=e[t].SubSectionIDs)}}function UpdateCumulativeSectionCount(){if(IsSearchBySubSection())for(var e=0;e<gArraySectionIDs.length;e++){var t=gArraySectionIDs[e];if(void 0!==gMapFilters.SX[t]){var r=new Array;r=gMapFilters.SX[t].m_arrSubSectionIds;for(var i=0;i<r.length;i++)void 0!==gMapFilters.SX[r[i]]&&(gMapFilters.SX[t].m_nCumulativeCount+=gMapFilters.SX[r[i]].m_nCount);gMapFilters.SX[t].m_nCumulativeCount+=gMapFilters.SX[t].m_nCount}}}function HideOptionAny(){var e=IsFilterAsDefaultView(),t=document.getElementById("SX_-1");if(t){var r=t.parentNode,i;i=e?r.childNodes:r.parentNode.childNodes;for(var n=0;n<i.length;n++)"LABEL"===i[n].tagName&&"SX_-1"===i[n].htmlFor&&i[n].parentNode.removeChild(i[n]);t.parentNode.removeChild(t)}var o=document.getElementById("-1");if(o){var a=o.parentNode,i;i=e?a.childNodes:a.parentNode.childNodes;for(var n=0;n<i.length;n++)"LABEL"===i[n].tagName&&"-1"===i[n].htmlFor&&i[n].parentNode.removeChild(i[n]);o.parentNode.removeChild(o)}for(var l=0;l<gArrProperty.length;l++)if(void 0!==gArrProperty[l]){var s=gArrProperty[l],c="",d="PropOptionTemplateSelect_"+s,u=document.getElementById(d);if(null!==u&&(c=u.innerHTML),""!==c&&IsDropDownListBox(c))continue;s+="-1";var p=document.getElementById(s);if(p&&""===p.value){var g=p.parentNode,i;i=e?g.childNodes:g.parentNode.childNodes;for(var n=0;n<i.length;n++)"LABEL"===i[n].tagName&&i[n].htmlFor===s&&i[n].parentNode.removeChild(i[n]);g.removeChild(p)}}}function IsFilterAsDefaultView(){return!("undefined"==typeof pg_bFilterDefaultView||!pg_bFilterDefaultView)}function IsShowClearButton(e){var t=!1;if("SX"===e)for(var r in gMapFilters.SX)void 0!==gMapCtrlSelections["SX:"+r]&&"-1"!==gMapCtrlSelections[r]&&(t=!0);else if("PR"===e)for(var i in gMapFilters.PR)void 0!==gMapCtrlSelections["PR:"+i]&&"-1"!==gMapCtrlSelections[i]&&(t=!0);else if(void 0!==gMapFilters[e])for(var n=gMapFilters[e].m_mapChoices,o=1;void 0!==n[o];){var a=n[o].m_sChoiceID;void 0!==gMapCtrlSelections[a]&&""!==gMapFilters[e].m_mapChoices[o].m_sChoiceName&&(t=!0),o++}return t}function FilterProductsBasedOnPerms(){var e={},t=new Array;for(var r in gMapPropCtrlSelections)void 0!==r&&t.push(r);if(t.length<=0)for(var i=gArrayDefinedPropertiesSorted.join(":"),n=0;n<gArrSortedProductRefs.length;n++){var o=gArrSortedProductRefs[n];void 0!==gMapInvalidProdRefs[o]||gMapObjProductDetails[o].m_bFullPermutation?void 0===(l=gMapObjProductDetails[o].m_mapCompToPermutation)[i]||"EMPTY"!==l[i]&&"OSTOCK"!==l[i]?e[o]=!0:IsAllOtherPermsValid(l,i)?e[o]=!0:e[o]=!1:e[o]=!0}else{InsertSort(t);for(var a=GetPermSelectionString(""),n=0;n<gArrSortedProductRefs.length;n++){var o=gArrSortedProductRefs[n];if(void 0!==gMapInvalidProdRefs[o]||gMapObjProductDetails[o].m_bFullPermutation){e[o]=!1;var l=gMapObjProductDetails[o].m_mapCompToPermutation;if(void 0===l.EMPTY){var s=!0,c=!1;for(sComponent in l)if(!0===IsValidComponent(t,sComponent)){if(c=!0,"EMPTY"===l[sComponent]||"OSTOCK"===l[sComponent]){IsAllOtherPermsValid(l,sComponent)&&(e[gArrSortedProductRefs[n]]=!0);continue}var d=l[sComponent];if(d.length>0)for(var u=0;u<d.length;u++)if(TestRegExp(d[u],a)){s=!1;break}!1===s&&(e[gArrSortedProductRefs[n]]=!0)}c||(e[gArrSortedProductRefs[n]]=!0)}else e[o]=!1}else e[o]=!0}}for(var o in e)!1===e[o]&&-1!==(p=GetArrayIndex(gArrSortedProductRefs,o))&&(gArrSortedProductRefs.splice(p,1),delete gMapMatchedProducts[o]);for(var p=0;p<gArrSortedProductRefs.length;p++){var o=gArrSortedProductRefs[p];void 0!==gMapAltProdToParentProductRef[o]&&void 0!==gMapMatchedProducts[gMapAltProdToParentProductRef[o]]&&(gArrSortedProductRefs.splice(p,1),p--)}gArrResultSet.length=0,gArrResultSet=GetDecoratedProdRefs(gArrSortedProductRefs)}function IsValidComponent(e,t){for(var r=!1,i=t.split(":"),n=e.join("|"),o=0;o<i.length;o++){var a=i[o];if(-1!==n.indexOf(a)){r=!0;break}}return r}function UpdatePermutationCount(e,t){var r=new Array;for(var i in gMapPropCtrlSelections)void 0!==i&&r.push(i);if("SX"!==e&&"PR"!==e){var n="",o=gMapFilters[e].m_mapChoices;for(n in o)if(""!==n&&0!==o[n].m_nChoiceCount){var a="",i=e,l=o[n].m_sChoiceName;a=GetPermSelectionString(i,l);for(var s=0;s<t.length;s++){var c=t[s];if(void 0===gMapAltProdToParentProductRef[c]||void 0===gMapProdToAltProdArray[gMapAltProdToParentProductRef[c]])if(void 0===gMapProdToAltProdArray[c]){if(void 0!==gMapObjProductDetails[c].m_mapProperties[e]&&void 0!==gMapObjProductDetails[c].m_mapProperties[e].m_mapChoices[l]){var d=gMapObjProductDetails[c].m_mapCompToPermutation,u=GetCombination(gMapFilterGrpIdToFilterGrpName[i],d);if(""!==u)IsValidCombination(c,a,u)||o[n].m_nChoiceCount--;else if(""!==(m=GetPermSelectionString(""))){var p=!1,g="";for(g in d)if((0==r.length||IsValidComponent(r,g))&&!IsValidCombination(c,m,g)){p=!0;break}p&&o[n].m_nChoiceCount--}}}else CheckAlternativePermutations(c,e,l,r)||o[n].m_nChoiceCount--}}}else for(var s=0;s<t.length;s++){var c=t[s];if(void 0===gMapAltProdToParentProductRef[c]||void 0===gMapProdToAltProdArray[gMapAltProdToParentProductRef[c]]||!("PR"===e&&gMapObjProductDetails[gMapAltProdToParentProductRef[c]].m_sDecPriceBand===gMapObjProductDetails[c].m_sDecPriceBand||"SX"===e&&gMapObjProductDetails[gMapAltProdToParentProductRef[c]].m_sDecSection===gMapObjProductDetails[c].m_sDecSection)){var m=GetPermSelectionString("");if(""!==m){var p=!1,g="",d=gMapObjProductDetails[c].m_mapCompToPermutation;for(g in d)if((0==r.length||IsValidComponent(r,g))&&!IsValidCombination(c,m,g)){p=!0;break}if(p)if("PR"===e){var f=gMapObjProductDetails[c].m_sDecPriceBand,v=gMapFilters.PR;for(var S in v)if(f===S){v[f].m_nCount--;break}}else if("SX"===e){var h=gMapObjProductDetails[c].m_sDecSection,P=gMapFilters.SX;for(var C in P)if(h===C){P[h].m_nCount--;break}}}}}}function CheckAlternativePermutations(e,t,r,i){if(void 0===gMapProdToAltProdArray[e])return!0;var n="",o=t,a=!0;n=GetPermSelectionString(o,r);for(var l=gMapProdToAltProdArray[e],s=0;s<l.length;s++){var e=l[s];if(void 0!==gMapObjProductDetails[e].m_mapProperties[t]&&void 0!==gMapObjProductDetails[e].m_mapProperties[t].m_mapChoices[r]){var c=gMapObjProductDetails[e].m_mapCompToPermutation,d=GetCombination(gMapFilterGrpIdToFilterGrpName[o],c);if(""!==d){var u=c[d];if(void 0!==gMapInvalidProdRefs[e]&&!gMapObjProductDetails[e].m_bFullPermutation&&"EMPTY"===u||"OSTOCK"===u){if(IsAllOtherPermsValid(c,d))return!0;a=!1;continue}if("EMPTY"===u)return!0;if(u.length>0){for(var p=0;p<u.length;p++)if(TestRegExp(u[p],n))return!0;p===u.length&&(a=!1)}}else{var g=GetPermSelectionString("");if(""!==g){var m=!1,f="";for(f in c)if(IsValidComponent(i,f)){if(IsValidCombination(e,g,f))return!0;a=!1;break}}}}}return a}function IsValidCombination(e,t,r){var i=gMapObjProductDetails[e].m_mapCompToPermutation;if(""!==r){var n=i[r];if(void 0!==gMapInvalidProdRefs[e]&&!gMapObjProductDetails[e].m_bFullPermutation&&"EMPTY"===n||"OSTOCK"===n)return!!IsAllOtherPermsValid(i,r);if("EMPTY"===n)return!0;if(n.length>0){for(var o=0;o<n.length;o++)if(TestRegExp(n[o],t))return!0;return!1}}return!0}function GetPermSelectionString(e,t){for(var r="",i=gMapFilterGrpIdToFilterGrpName[e]+":"+t,n=0;n<gArrayDefinedPropertiesSorted.length;n++){var o=gArrayDefinedPropertiesSorted[n],a=gMapPropNameToPropId[o];e===a?r+="-"+i+"-":void 0!==gMapPropIdToSelections[a]?r+="-"+gMapPropIdToSelections[a].join("--")+"-":r+="-"+gMapPropIdDecoratedChoices[a].join("--")+"-"}return r}function GetCombination(e,t){var r="";for(var i in t)if(""!==i&&-1!==i.indexOf(e)){r=i;break}return r}function CalculateCount(e){for(var t=0;t<gArrFilterGrpIdSorted.length;t++){var r="",i=gArrFilterGrpIdSorted[t];e||g_bClearAll||(r=GetFilterPatternForCount(i));var n=GetFilteredProducts(r);CountFilterOptions(i,n),UpdatePermutationCount(i,n),"SX"===i&&UpdateCumulativeSectionCount()}}function GetFilterPatternForCount(e){var t={},r="";for(var i in gMapFilterGrpIdToFilterGrpName)if(i!==e&&void 0!==gMapControlToSelection[i]){var n=gMapControlToSelection[i],o=new Array,a="";if("PR"===i)for(var l in n){var s=i+"_"+l;o.push(s)}else if("SX"===i){var c={};for(var l in n){c[l]="";for(var d=gMapFilters.SX[l].m_arrSubSectionIds,u=0;u<d.length;u++)-1!==GetArrayIndex(gArraySectionIDs,d[u])&&(c[d[u]]="")}for(var p in c){var s=i+"_"+p;o.push(s)}}else for(var g in n)if(void 0!==gMapControlIdChoiceName[g]){var s=i+":"+gMapControlIdChoiceName[g];o.push(s)}o.length>0&&(t[i]="\\!"+o.join("\\!|\\!")+"\\!")}for(var m=0;m<gArrFilterGrpIdSorted.length;m++){var f=gArrFilterGrpIdSorted[m];void 0!==t[f]&&(r.length>0&&(r+=".*"),r+=t[f])}return r}function GetFilteredProducts(e){var t=new Array,r=new RegExp(e,"i");gMapMatchedProducts={},gMapProdToAltProdArray={};for(var i in gMapObjProductDetails)""!==e?TestRegExp(r,gMapObjProductDetails[i].m_sDecFilterString)&&(t.push(i),gMapMatchedProducts[i]=""):(t.push(i),gMapMatchedProducts[i]="");for(var n=0;n<t.length;n++){var i=t[n];void 0!==gMapAltProdToParentProductRef[i]&&void 0!==gMapMatchedProducts[gMapAltProdToParentProductRef[i]]&&(void 0===gMapProdToAltProdArray[gMapAltProdToParentProductRef[i]]&&(gMapProdToAltProdArray[gMapAltProdToParentProductRef[i]]=new Array,gMapProdToAltProdArray[gMapAltProdToParentProductRef[i]].push(gMapAltProdToParentProductRef[i])),gMapProdToAltProdArray[gMapAltProdToParentProductRef[i]].push(i))}return t}function TestRegExp(e,t){var r=!1;return void 0!==e&&void 0!==t&&""!=t&&(r=e.test(t)),r}function CountFilterOptions(e,t){for(var r={},i=0;i<t.length;i++)r[t[i]]="";for(var i=0;i<t.length;i++){var n=t[i];if("PR"===e){var o=gMapObjProductDetails[t[i]].m_sDecPriceBand;void 0!==gMapAltProdToParentProductRef[n]&&void 0!==r[gMapAltProdToParentProductRef[n]]&&gMapObjProductDetails[gMapAltProdToParentProductRef[n]].m_sDecPriceBand===o||UpdatePriceCount(o)}else if("SX"===e){var a=gMapObjProductDetails[t[i]].m_sDecSection;void 0!==gMapAltProdToParentProductRef[n]&&void 0!==r[gMapAltProdToParentProductRef[n]]&&gMapObjProductDetails[gMapAltProdToParentProductRef[n]].m_sDecSection===a||UpdateSectionCount(a)}else{var l=gMapObjProductDetails[t[i]].m_sDecFilterString,s=gMapObjProductDetails[t[i]].m_mapDecChoices;if(void 0===gMapAltProdToParentProductRef[n]||void 0===r[gMapAltProdToParentProductRef[n]])UpdateChoiceCount(e,l,s);else{var c=gMapObjProductDetails[gMapAltProdToParentProductRef[n]].m_mapDecChoices,d={};for(var u in s)d[u]="";for(var u in c)void 0!==d[u]&&delete d[u];UpdateChoiceCount(e,l,d)}}}}function UpdatePriceCount(e){var t=gMapFilters.PR,r=!1;for(var i in t)if(i===e){t[i].m_nCount++,r=!0;break}r&&(gMapFilters.PR.m_bShow=!0)}function UpdateSectionCount(e){var t=gMapFilters.SX,r=!1;for(var i in t)if(i===e){t[i].m_nCount++,r=!0;break}r&&(gMapFilters.SX.m_bShow=!0)}function UpdateChoiceCount(e,t,r){var i=gMapFilters[e].m_mapChoices,n=!1;for(var o in i){var a=i[o];""!==a.m_sChoiceName&&(void 0!==r[e+":"+a.m_sChoiceName]&&(a.m_nChoiceCount++,n=!0))}n&&(gMapFilters[e].m_bShow=!0)}function RemoveFilterWithZeroCount(){for(var e in gMapFilters)if("PR"===e){var t=gMapFilters[e];for(var r in t)0==t[r].m_nCount&&(t[r].m_bHideAlways=!0)}else if("SX"===e){var i=gMapFilters[e];for(var n in i)0==i[n].m_nCumulativeCount&&(i[n].m_bHideAlways=!0)}else{var o=gMapFilters[e].m_mapChoices;gMapFilters[e].m_bHideAlways=!0;for(var a in o)0==o[a].m_nChoiceCount?o[a].m_bHideAlways=!0:gMapFilters[e].m_bHideAlways=!1}}function IsAllOtherPermsValid(e,t){var r=!1;for(var i in e)if(i!==t){var n=e[i];if("EMPTY"!==n&&"OSTOCK"!==n&&n.length>0){r=!0;break}}return r}function GetFilterCacheURL(e){var t="",r=document.getElementsByTagName("base");if(r&&r.length>0){t=r[0].href;var i=document.location.protocol,n=t.split("//")[0];n!=i&&(t=t.replace(new RegExp("^"+n),i));var o=t.split("//")[1].split("/")[0];return o!=document.location.host&&(t=t.replace(o,document.location.host)),t.match(/\/$/)||(t+="//"),t+e}return e}function ReloadCarousels(){$("div[class^='bxSlider']").each(function(e){var t=$(this).data("sd_BXSlider");t&&t.reloadSlider()})}function CacheStockFilter(){if(IsExcludeOutOfStockItems()){var e=new ajaxObject("stockfilter.js");e.callback=function(e){if(""!==e){g_bCacheStock=!1;var t=e.split("|");for(gMapRefStock={},index=0;index<t.length;index++)if(""!=t[index]){var r=t[index].split("_");gMapRefStock[r[0]]=parseInt(r[1])}}},e.update("","GET",!1)}}function IsOutOfStockFromStockFilter(e){return void 0===gMapRefStock[e]?null:gMapRefStock[e]<=0}function IsExcludeOutOfStockItems(){return"undefined"!=typeof pg_bExcludeOutOfStockItems&&0!==pg_bExcludeOutOfStockItems}function GetProdRefForFullPermutation(){var e={};for(var t in gMapRefStock)if(void 0!==gMapChildToParentProducts[t])for(var r=gMapChildToParentProducts[t],i=0;i<r.length;i++)e[r[i]]=null;for(var t in gMapInvalidEmptyPermsProdRefs)e[t]=null;var n="",o=0;for(var t in e)n+=(0==o?"":"_")+t,o++;return n}function UpdateProductDetailsWithFullPermutation(e){var t={};try{t=e.parseJSON()}catch(e){return void ShowJSONError(e)}arrProductToFullPermutation=t.FullPermutationList;for(var r=0;r<arrProductToFullPermutation.length;r++){var i=arrProductToFullPermutation[r];for(var n in i)if(void 0!==gMapObjProductDetails[n]){UpdateCompToPermMapWithFullPermutation(gMapObjProductDetails[n],i[n]);var o=gMapObjProductDetails[n].m_mapCompToPermutation;if(0==Object.keys(o).length)continue;var a=!1;for(var l in o)if("OSTOCK"===o[l]){a=!0;break}a&&delete gMapObjProductDetails[n]}}}function UpdateCompToPermMapWithFullPermutation(e,t){if(""!==t){e.m_mapCompToPermutation={};for(var r=t.split(","),i=0;i<r.length;i++){var n=/(<(.*)>(.*))/gim,o=n.exec(r[i]);if(null!==o&&""!==o[2]){var a=o[2].toUpperCase().split(":");InsertSort(a);for(var l=a.join(":"),s=0;s<a.length;s++)void 0===gMapPropNameToPropId[a[s]]&&(a.splice(s,1),s--);var c=o[3];if(""===c)continue;for(var d=c.split("|"),u=d.length>0,p=0;p<d.length;p++)if(0!=(o=(n=/(.*)\:(\d)\:.*\:(.*)/gim).exec(d[p]))[2]){var g=o[3];if(""!=g){var m=g.split("!"),f=m[0];if(IsOutOfStock(f=DecodeHtmlEntity(f),m[2],m[3]))continue;u=!1}for(var v=o[1].toUpperCase().split("!!"),S=0;S<v.length;S++){var h=v[S].split("!");void 0===gMapPropNameToPropId[h[0]]&&(v.splice(S,1),S--)}if(0!==v.length){InsertSort(v);var P=("\\-"+v.join("\\-.*\\-")+"\\-").split("!"),C=new RegExp(P.join("\\:"),"i");void 0!==e.m_mapCompToPermutation[l]&&"EMPTY"!==e.m_mapCompToPermutation[l]&&"OSTOCK"!==e.m_mapCompToPermutation[l]||(e.m_mapCompToPermutation[l]=new Array),e.m_mapCompToPermutation[l].push(C)}}else void 0===e.m_mapCompToPermutation[l]&&(e.m_mapCompToPermutation[l]="EMPTY");!u||void 0!==e.m_mapCompToPermutation[l]&&"EMPTY"!==e.m_mapCompToPermutation[l]||(e.m_mapCompToPermutation[l]="OSTOCK")}}e.m_bFullPermutation=!0}else e.m_mapCompToPermutation.EMPTY=""}/***************************************************************
* 
* dynamic.js	-	utility functions for dynamic prices and choices
*
* Copyright (c) 2014 SellerDeck Limited
*
****************************************************************/
var g_mapProds={},timeout=null,g_nTimeout=1e3,g_sDynamicPriceURL="";function OnProdLoad(e,t,r){if(e)g_sDynamicPriceURL=e,getAllDynamicPrices(e,t,r);else{if(g_sDynamicPriceURL="",g_bStockUpdateInProgress)return void(g_bChoicesUpdatePending=!0);SetupVariants(!1);for(var i in g_mapProds)UpdateChoices(g_mapProds[i],!0,void 0)}}function GetAttrFromSuffix(e,t){if(!e.mapAttr){e.mapAttr={};for(var r=0;r<e.arrComps.length;r++){var i=e.arrComps[r];if(i.aA)for(var n=0;n<i.aA.length;n++)e.mapAttr[i.aA[n].nUI]=i.aA[n]}}return e.mapAttr[t]}function UpdateChoices(e,t,r){if(e&&!e.bFixChoices&&!e.bNoATC&&e.arrComps){for(var i=GetProdChoices(e,r,t),n=GetChangedElemIndices(e,r),o=n?n.nCompIndex:0,a=e.arrComps,l=a.length,s=o;s<l;s++){var c=i[s],d=a[s];if(d.aA&&(t&&MapInvalidPermutations(d),d.mP||e.bSequentialChoices)){d.arrUserSeq||(d.arrUserSeq=[]),!e.bSequentialChoices&&n&&s==n.nCompIndex&&UpdateUserSequence(d,n.nAttrIndex,i[s]),NormaliseAttrSeq(d);var c=NormaliseUserChoices(d,i[s]);NormalisePerms(d);var u=0;e.bSequentialChoices&&s==o&&n&&(u=n.nAttrIndex),UpdateCompChoices(e,d,c,u)}}updateStockDisplay(g_mapStockByRef,!1),e.bSequentialChoices&&UpdateSequentialDisplay(e,i)}}function UpdateSequentialDisplay(e,t){for(var r=!1,i=0;i<e.arrComps.length;i++)r=UpdateSequentialCompDisplay(e,e.arrComps[i],t[i],0,r)}function UpdateSequentialCompDisplay(e,t,r,i,n){var o=t.elemHTML,a=!0;if("checkbox"==o.type&&(o.disabled=n,n||(a=o.checked)),!t.aA)return n;for(var l=t.aA.length,s=i;s<l;s++){var c=t.aA[s].elem.elemHTML;if(n||!a)EnableSelectElement(c,!1),"SELECT"==c.tagName&&(c.selectedIndex=0);else{var d=GetValidChoiceCount(c);if((!t.bOpt||l>1)&&1==d.nCount){var u=GetAttributeValue(c);"SELECT"==c.tagName?d.elemFirstValid.selected=!0:d.elemFirstValid.checked=!0;var p=GetAttributeValue(c);u!=p&&(r[s]=p?parseInt(p):0,UpdateCompChoices(e,t,r,s+1))}var u=GetAttributeValue(c);EnableSelectElement(c,!0),""==u&&(n=!0)}}return n}function GetValidChoiceCount(e){var t=0,r=null;if("SELECT"==e.tagName)for(var i=0;i<e.options.length;i++){var n=e.options[i];(l=parseInt(n.value?n.value:"0"))>0&&!n.disabled&&1==++t&&(r=n)}else for(var o=document.getElementsByName(e.name),i=0;i<o.length;i++){var a=o[i],l=parseInt(a.value?a.value:"0");l>0&&1==++t&&(r=a)}return{nCount:t,elemFirstValid:r}}function EnableSelectElement(e,t){if("SELECT"==e.tagName)e.disabled=!t;else for(var r=document.getElementsByName(e.name),i=0;i<r.length;i++)r[i].disabled=!t}function GetProdChoices(e,t,r){if(!e.arrComps)return[];for(var i=!1,n=new Array(e.arrComps.length),o=0;o<e.arrComps.length;o++){var a=e.arrComps[o];if(a.aA){n[o]=new Array(a.aA.length);for(var l=0;l<a.aA.length;l++){var s=a.aA[l];if(s.nCC&&s.elem)if(r)a.bOpt&&a.bSelDef&&"SPAN"==s.elem.elemHTML.tagName?n[o][l]=1:n[o][l]=0;else{var c=GetAttributeValue(s.elem.elemHTML),d=""==c?0:parseInt(c,10);e.bSequentialChoices&&(i?d=0:(0==d||t&&t.name==s.elem.elemHTML.name)&&(a.bOpt&&!IsCompEnabled(a,n[o])||(i=!0))),n[o][l]=d}}}}return n}function UpdateCompChoices(e,t,r,i,n){if(t.aA){var o=t.aA;void 0==n&&(n=o.length);for(var a=i;a<n;a++){var l=GetUserChoiceCount(r),s=GetNormAttr(t,a),c=r[a]?r[a]:"";if(void 0!=s.elem){var d=s.elem,u=d.elemHTML,p=d.arrOptions,g="";"SELECT"==u.tagName?u.options.length=0:g=d.arrHTMLFrag[0];for(var m=0,f=0,v=-1,S=s.nRBCCount,h=p.length,P=0,C=-1,I=!1,_=0;_<h;_++){var A=p[_][0];r[a]=A?parseInt(A):0;var T=p[_][1],y=p[_][2];if(0==_&&""==T||IsValidOption(t,r,a,a,l))if(I=0==_&&0==r[_],f++,A&&1==++P&&(C=r[a]),"SELECT"==u.tagName)AddOption(u,A,T,A==c,y);else{var R=d.arrHTMLFrag[m+1];S>1&&f%S==0&&_<p.length-1&&(R=d.arrHTMLFrag[S]),g+=T+R}m++}if((!t.bOpt||o.length>1)&&1==P&&(SetAttributeValue(u,c=C),r[a]=C,a>l&&UpdateCompChoices(e,t,r,l,a)),0==f||I){if(!t.bOpt){e.bNoATC=!0;var b=e.sProdRef.replace(/^\d+!/,""),E="EnableIfOutOfStock_"+b,D=document.getElementById(E);D&&(D.style.display="",D.style.visibility="visible"),(D=document.getElementById("RemoveIfOutOfStock_"+b))&&(D.style.display="none",D.style.visibility="hidden"),(D=document.getElementById("RemoveIfOutOfStock_ATC_"+b))&&(D.style.display="none",D.style.visibility="hidden")}"SELECT"==u.tagName&&(u.style.display="none",t.elemHTML.value="",t.elemHTML.style.display="none","checkbox"==t.elemHTML.type&&(t.elemHTML.checked=!1))}"SELECT"!=u.tagName?(document.getElementById("id"+u.name+"_Table").innerHTML=g,SetAttributeValue(u,c)):-1==u.selectedIndex&&(u.selectedIndex=0);var M=GetAttributeValue(u);r[a]=""==M?0:parseInt(M,10)}}}}function GetPricePerm(e,t){if(t){if(t[e])return t[e];for(var r=Clone(e),i=0;i<e.length;i++)if(e[i]){if(r[i]=0,t[r])return t[r];r[i]=e[i]}}}function IsValidOption(e,t,r,i,n){if(0==e.nInvalidPermCount)return!0;var o=t[r];if(o>0&&0==e.nInvalidAnyCount&&0==e.arrInvalidPerms[r][o])return!0;var a=!IsInvalidAnyChoice(e,t,r,0);if(a)if(r!=i&&r>n-1){for(var l=GetNormAttr(e,r),s=l.nCC-1,c=1;c<l.nCC;c++)t[r]=c,r<t.length-1?IsValidOption(e,t,r+1,i,n)||s--:(-1==e.mapNormPerms[t]||r>0&&!HasValidPrevChoices(e,t,i-1,i))&&s--;a=s>0}else r<t.length-1&&(a=IsValidOption(e,t,r+1,i,n));return t[r]=o,a&&r>0&&(HasValidPrevChoices(e,t,i-1,i)||(a=!1)),a}function IsInvalidAnyChoice(e,t,r,i){if(-1==e.mapNormPerms[t])return!0;if(0==e.nInvalidAnyCount)return!1;for(var n=i;n<t.length;n++){if(0==t[n]){for(var o=e.aA[r].nCC-1,a=1;a<o;a++)t[n]=a,-1==e.mapNormPerms[t]&&o--;if(t[n]=0,o<=0)return!0}if(n!=r){var l=!1,s=t[n];if(t[n]=0,-1==e.mapNormPerms[t]?l=!0:n<t.length-1&&IsInvalidAnyChoice(e,t,r,n+1)&&(l=!0),t[n]=s,l)return!0}}return!1}function HasValidPrevChoices(e,t,r,i){if(r<0)return!0;var n=!1,o=t[r];if(t[r]=0,-1==e.mapNormPerms[t])n=!0;else{if(t[r]=o,0==o){for(var a=GetNormAttr(e,r),l=a.nCC-1,s=1;s<a.nCC;s++)t[r]=s,-1==e.mapNormPerms[t]?l--:r>0&&!HasValidPrevChoices(e,t,r-1,i)&&l--;t[r]=o,n=l<1}!n&&r>0&&!HasValidPrevChoices(e,t,r-1,i)&&(n=!0)}return t[r]=o,!n&&r>0&&(n=!HasValidPrevChoices(e,t,r-1,i)),!n}function IsCompEnabled(e,t){if(!e||!e.elemHTML)return!1;var r=e.elemHTML,i="on"==r.value;return"checkbox"==r.type?r.checked:void 0==t?i:i&&t[0]>-1}function ChoiceChanged(e,t,r,i){var n=e.name,o;if(0==n.indexOf("v_")?o=n.match(/^v_(.*)_\d+$/)[1]:0==n.indexOf("Q_")&&(o=n.substr(2)),o){g_oConfig.bEstimateChoicePrices||ValidateChoices(o,!0,e)||ShowDynamicPriceMessage(o,g_sUndeterminedPrice);var a=g_mapProds[o];UpdateChoices(a,!1,e),UpdatePrice(a,t,r,i)}}function ValidateChoices(e,t,r){var i=g_mapProds[e];if(!i||!i.arrComps)return!0;for(var n=GetProdChoices(i,r),o=0;o<i.arrComps.length;o++)if(n[o]){var a=i.arrComps[o];if(IsCompEnabled(a,n[o])&&(!a.bOpt||1!=a.aA.length)&&!ValidateComp(n[o],a.aA,t))return!1}return!0}function ValidateComp(e,t,r){for(var i=0;i<e.length;i++)if(!e[i]){if(!r){var n="Please select a "+t[i].sN,o=t[i].elem.elemHTML;if(alert(n),"SELECT"!=o.tagName){var a=o.id.replace(/(_(\d+|))$/,""),l=document.getElementsByName(a);l.length>0&&(o=l[0])}o.focus()}return!1}return!0}function UpdatePrice(e,t,r,i){if(e&&!e.bFixPrice&&!e.bNoATC&&t){var n=document.getElementById("id"+e.sProdRef+"TaxIncPrice"),o=document.getElementById("id"+e.sProdRef+"TaxExcPrice"),a=document.getElementById("id"+e.sProdRef+"AccountPrice");if(n||o||a){var l=document.getElementById("id"+e.sProdRef+"VATMsg"),s=document.getElementById("id"+e.sProdRef+"DynamicPrice"),c=document.getElementById("id"+e.sProdRef+"StaticPrice");e.bOvrStaticPrice&&c&&!e.bQuantityBreak&&(c.style.visibility="hidden",c.style.display="none");var d=GetOriginalRef(e.sProdRef);if(g_mapDynPrices[d]||g_mapDynPrices.ErrorMsg){if(g_mapDynPrices.ErrorMsg||g_mapDynPrices[d].ErrorMsg)return l&&(l.style.visibility="hidden",l.style.display="none"),o?o.innerHTML=g_mapDynPrices.ErrorMsg?g_mapDynPrices.ErrorMsg:g_mapDynPrices[d].ErrorMsg:n&&(n.innerHTML=g_mapDynPrices.ErrorMsg?g_mapDynPrices.ErrorMsg:g_mapDynPrices[d].ErrorMsg),void(s&&(s.style.display="",s.style.visibility="visible"));l&&(l.style.visibility="visible",l.style.display="");var u=g_mapDynPrices[d].Total,p=g_mapDynPrices[d].Total+g_mapDynPrices[d].Tax1+g_mapDynPrices[d].Tax2;o&&(o.innerHTML=FormatPrices(u)),n&&(n.innerHTML=FormatPrices(p))}else getDynamicAccPrice(t,r,e,i);s&&(s.style.display="",s.style.visibility="visible")}}}function FormatPrices(e){for(var t=[],r=0;r<g_oConfig.arrCurrs.length;r++){var i=g_oConfig.arrCurrs[r];t.push(FormatPrice(e,i))}return 1==t.length?t[0]:Sprintf(g_oConfig.sPriceFmt,t[0],t[1])}function ZeroPad(e,t){var r="000000000000000",i=e.toString();return i.length<t&&(i=r.substr(0,t-i.length)+i),i}function FormatPrice(e,t){var r=parseFloat(t.sRate),i=Math.round(e*r),n=Math.pow(10,t.nDecs),o=Math.pow(10,t.nThous),a="",l=i;if(n>1){var s=l%n;a=t.sDecSep+ZeroPad(s,t.nDecs),l=parseInt(l/n)}if(0==l)a="0"+a;else for(;l;){var c=l%o;a=(l=parseInt(l/o))?t.sThouSep+ZeroPad(c,t.nThous)+a:c.toString()+a}return t.sSym+a}function GetTaxRate(e){return e/100}function AddOption(e,t,r,i,n){var o=document.createElement("OPTION");return o.text=r,o.value=t,i&&(o.selected=!0),o.className=n,e.options.add(o),o}function CSelect(e){this.elemHTML=e,"SELECT"==e.tagName?(this.arrOptions=GetOptionsArray(e),this.sValue=e.value):this.arrOptions=GetOptionsArray(e,this)}function GetOptionsArray(e,t){var r=[];if("SELECT"==e.tagName)for(var i=0;i<e.options.length;i++){var n=e.options[i],o=[n.value,n.text,n.className];r.push(o)}else{var a=document.getElementById("id"+e.name+"_Table");if(a){for(var l=a.innerHTML,s=[],c=document.getElementsByName(e.name),d=0,u=0,i=0;i<c.length;i++){var p=c[i],g=p.value,m=p.className,f=e.name+"_"+g,v=document.getElementById(f),S=v.outerHTML;if(!S){var h=l.indexOf(v.id),P=l.lastIndexOf("<",h),C=l.indexOf(">",P+v.innerHTML.length);S=l.substring(P,C+1)}r.push([g,S,m]),u=l.indexOf(S,d),s.push(l.substring(d,u)),d=u+S.length}s.push(l.substr(d)),t.arrHTMLFrag=s}}return r}function GetChoiceValues(e){for(var t=[],r=GetAttributes(e),i=0;i<r.length;i++){var n=GetAttributeValue(r[i]),o=""==n?0:parseInt(n,10);t.push(o)}return t}var reProdRefName=/^v_(.*)_\d+$/,reProdRefID=/^v_(.*)_\d+_\d+$/;function GetProdRefFromElem(e){var t=e.name;if(!t&&(r=e.id.match(reProdRefID)))return r[1];if(t){var r=t.match(reProdRefName);if(r)return r[1]}return""}var reAttr=/\bajs-attr\b/;function GetAttributes(e){for(var t={},r={},i=GetAllElements(e),n=0;n<i.length;n++){var o=i[n];if(reAttr.test(o.className)){var a=GetProdRefFromElem(o);if(t[a]||(t[a]=[]),"SELECT"==o.tagName)t[a].push(o);else{var l=o.id.replace(/_\d+$/,"");o.name=l,r[l]||(r[l]=o,t[a].push(o))}}}return t}function GetAttributeValue(e){if("SELECT"==e.tagName)return e.value;for(var t=document.getElementsByName(e.name),r=0;r<t.length;r++)if(t[r].checked)return t[r].value;return 0}function SetAttributeValue(e,t){if("SELECT"==e.tagName)return e.value=t,e.value==t;for(var r=document.getElementsByName(e.name),i=0;i<r.length;i++)if(r[i].value==t)return r[i].checked=!0,!0;return r.length>0&&(r[0].checked=!0),!1}function Clone(e){for(var t=new Array(e.length),r=0;r<e.length;r++)t[r]=e[r];return t}function QuantityTimer(e,t,r,i){var n=e.name;if(0==n.indexOf("Q_")&&(sProdRef=n.substr(2)),sProdRef){var o=g_mapProds[sProdRef];if(!g_oConfig.bEstimateChoicePrices&&!ValidateChoices(sProdRef,!0,e)){var a=document.getElementById("id"+sProdRef+"DynamicPrice"),l=document.getElementById("id"+sProdRef+"StaticPrice");return o.bOvrStaticPrice&&a&&"none"==a.style.display&&(l&&!o.bQuantityBreak&&(l.style.visibility="hidden",l.style.display="none"),a.style.display="",a.style.visibility="visible"),void ShowDynamicPriceMessage(sProdRef,g_sUndeterminedPrice)}o.arrComps&&UpdateChoices(o,!1,e),UpdatePrice(o,t,r,i)}}function QuantityChanged(e,t,r,i){timeout&&(clearTimeout(timeout),timeout=null),timeout=setTimeout(function(){QuantityTimer(e,t,r,i)},g_nTimeout)}function ShowDynamicPriceMessage(e,t){var r=document.getElementById("id"+e+"TaxIncPrice"),i=document.getElementById("id"+e+"TaxExcPrice"),n=document.getElementById("id"+e+"VATMsg");n&&(n.style.visibility="hidden",n.style.display="none"),r&&i?(r.innerHTML="",i.innerHTML=t):r?r.innerHTML=t:i&&(i.innerHTML=t)}function GetChangedElemIndices(e,t){if(t&&e.arrComps)for(var r=0;r<e.arrComps.length;r++){var i=e.arrComps[r];if(i.aA)for(var n=0;n<i.aA.length;n++){var o=i.aA[n];if("SELECT"==t.tagName){if(o.elem.elemHTML==t)return{nCompIndex:r,nAttrIndex:n}}else if("INPUT"==t.tagName&&"radio"==t.type&&o.elem.elemHTML.name==t.name)return{nCompIndex:r,nAttrIndex:n}}}}function CloneArray(e){for(var t=new Array(e.length),r=0;r<e.length;r++)t[r]=e[r];return t}function UpdateUserSequence(e,t,r){for(var i=e.arrUserSeq,n=r[t],o=0;o<i.length;o++)if(i[o]==t){i.splice(o,1);break}n>0&&i.push(t)}function NormaliseAttrSeq(e){if(e.aA){for(var t=[],r={},i=0;i<e.arrUserSeq.length;i++){var n=e.arrUserSeq[i];r[n]=1,t.push(n)}for(var i=0;i<e.aA.length;i++)r[i]||t.push(i);e.arrNormAttrSeq=t}}function NormaliseUserChoices(e,t){for(var r=[],i=0;i<e.arrNormAttrSeq.length;i++){var n=e.arrNormAttrSeq[i];r.push(t[n])}return r}function GetNormAttr(e,t){var r=e.arrNormAttrSeq[t];return e.aA[r]}function MapInvalidPermutations(e){if(e.nInvalidPermCount=0,e.mP){var t={},r=e.mP,i=e.hOS;for(var n in r){var o=r[n];(-1==o[0]||0==o[0]&&i&&""!=o[1]&&void 0!=g_mapStockByRef[o[1]]&&g_mapStockByRef[o[1]]<=0)&&(t[n]=-1,e.nInvalidPermCount++)}e.mapInvalid=t}}function NormalisePerms(e){var t={},r=e.mapInvalid;for(var i in r)if(1==e.aA.length)t[i]=-1;else{for(var n=i.split(","),o=[],a=0;a<e.arrNormAttrSeq.length;a++){var l=e.arrNormAttrSeq[a];o.push(n[l])}t[o]=-1}e.mapNormPerms=t,GetInvalidAttrCounts(e)}function GetInvalidAttrCounts(e){e.nInvalidAnyCount=0;for(var t=new Array(e.aA.length),r=0;r<t.length;r++){for(var i=GetNormAttr(e,r).nCC,n=new Array(i),o=0;o<i;o++)n[o]=0;t[r]=n}for(var a in e.mapNormPerms)for(var l=a.split(","),r=0;r<l.length;r++){var s=t[r],c=l[r];0!=c?s[c]++:e.nInvalidAnyCount++}e.arrInvalidPerms=t}function GetUserChoiceCount(e){for(var t=0,r=0;r<e.length;r++)0!=e[r]&&t++;return t}var nStartPos=-1,bUseTable=!1;function CreateRecentProduct(e,t,r,i){this.sPid=e,this.sPname=t,this.sPprice=r,this.sThumb=i}function GetRecentFromCookie(){var e=getCookie("ACTINIC_RECENT");if(null!=e&&e.length>10){for(var t=new Array,r=e.split("\f"),i=0;i<r.length;i++){var n=r[i].split("\t");t.push(new CreateRecentProduct(n[0],n[1],n[2],n[3]))}return t}return!1}function SetRecentToCookie(e){for(var t="",r=0;r<e.length;r++)t+=e[r].sPid+"\t"+e[r].sPname+"\t"+e[r].sPprice+"\t"+e[r].sThumb+"\f";t=t.slice(0,-1);var i=new Date;i.setTime(i.getTime()+36e5*nKeepRecentHours),setCookie("ACTINIC_RECENT",t,i)}function ReplaceVariables(e,t){var r=0==t.sThumb.indexOf("file:///")?t.sThumb:catalogDir+t.sThumb;return e=e.replace(/_PID_/g,t.sPid),e=e.replace(/_ENAME_/g,escape(t.sPname)),e=e.replace(/_NAME_/g,t.sPname),e=e.replace(/_PRICE_/g,t.sPprice),e=e.replace(/_THUMB_/g,r),e=e.replace(/_SSURL_/g,ssURL),e=e.replace(/_HREF_/g,"href")}function ScrollBackRecent(){var e=GetRecentFromCookie();e&&e.length>nTrimListTo&&((nStartPos-=nScrollBy)<0&&(nStartPos=0),document.getElementById("recenthtlist").innerHTML=bUseTable?RecentProductsListTableHTML():RecentProductsListHTML(),SetBackForwardButtons())}function ScrollForwardRecent(){var e=GetRecentFromCookie();e&&e.length>nTrimListTo&&(nStartPos<0&&(nStartPos=0),(nStartPos+=nScrollBy)>e.length-nTrimListTo&&(nStartPos=e.length-nTrimListTo),document.getElementById("recenthtlist").innerHTML=bUseTable?RecentProductsListTableHTML():RecentProductsListHTML(),SetBackForwardButtons())}function SetBackForwardButtons(){var e=GetRecentFromCookie();if(e){var t;(t=document.getElementById("scrollbackrecent"))&&(t.disabled=nStartPos<=0,t.style.cursor=nStartPos<=0?"default":"pointer"),(t=document.getElementById("scrollforwardrecent"))&&(t.disabled=nStartPos>=e.length-nTrimListTo,t.style.cursor=nStartPos>=e.length-nTrimListTo?"default":"pointer")}}function TrimRecentProductsList(e){var t=e.length;if(t<=nTrimListTo)return nStartPos=0,e;var r=new Array;for(nStartPos<0&&(nStartPos=t-nTrimListTo),nStartPos>t-nTrimListTo&&(nStartPos=t-nTrimListTo),i=0;i<nTrimListTo;i++)r.push(e[nStartPos+i]);return r}function RecentProductsListHTML(){var e=GetRecentFromCookie();if(e){e=TrimRecentProductsList(e),bDisplayReversed&&e.reverse();for(var t="",r=0;r<e.length;r++)t+=ReplaceVariables(sRecentItem,e[r]);if(""!=t)return sRecentPrefix+t+sRecentSuffix}return sRecentEmptyList}function RecentProductsListTableHTML(){var e=GetRecentFromCookie();if(e){e=TrimRecentProductsList(e),bDisplayReversed&&e.reverse();for(var t=!1,r=sRecentImageRowPrefix,i=sRecentDescRowPrefix,n=sRecentPriceRowPrefix,o=sRecentDeleteRowPrefix,a=0;a<e.length;a++)bHaveItems=!0,r+=ReplaceVariables(sRecentImageItem,e[a]),i+=ReplaceVariables(sRecentDescItem,e[a]),n+=ReplaceVariables(sRecentPriceItem,e[a]),o+=ReplaceVariables(sRecentDeleteItem,e[a]);if(bHaveItems)return sRecentPrefix+r+sRecentImageRowSuffix+i+sRecentDescRowSuffix+n+sRecentPriceRowSuffix+o+sRecentDeleteRowSuffix+sRecentSuffix}return sRecentEmptyList}function DisplayRecentProducts(e){bUseTable=!0===e,e?(document.write(RecentProductsListTableHTML()),SetBackForwardButtons()):(document.write(RecentProductsListHTML()),SetBackForwardButtons())}function SaveRecentProduct(e,t,r,i){if(""!=i){var n=new Array,o=GetRecentFromCookie();if(o)for(var a=0;a<o.length;a++)o[a].sPid!=e&&n.push(o[a]);for(n.push(new CreateRecentProduct(e,t,r,i));n.length>nMaxRecent;)n.shift();SetRecentToCookie(n)}}function DeleteRecent(e,t){var r=new Array,i=GetRecentFromCookie();if(i)for(var n=0;n<i.length;n++)i[n].sPid!=e&&r.push(i[n]);if(SetRecentToCookie(r),t)document.getElementById("recenthtlist").innerHTML=RecentProductsListTableHTML();else{var o=document.getElementById("recenthtlist");null===o&&(o=document.getElementById("recentstlist")),o&&(o.innerHTML=RecentProductsListHTML())}SetBackForwardButtons()}/***************************************************************
* 
* Responsive.js	-	 utility functions for responsive web design
*
* Copyright (c) 2014 SellerDeck Limited
*
****************************************************************/
void 0===window.SD&&(window.SD={}),window.SD.Responsive={CallFunctions:function(){SD.Responsive.contactInfoTop(),SD.Responsive.menus(),SD.Responsive.orderHistory(),SD.Responsive.orderHistoryDisplay(),SD.Responsive.searchButton(),SD.Responsive.ie9(),SD.Responsive.android(),SD.Responsive.setBrowserSizeListener(),SD.Responsive.moveSizeDependentComponents(),SD.Responsive.quantityButtons(),SD.Responsive.addNavigateOnClick(),SD.Responsive.removeDuplicatedInfo(),SD.Responsive.resizeImages()},contactInfoTop:function(){var e=function(){$(".topContactInfoMobile div").css("clear","none"),$(".topContactInfoMobile div").css("width",""),$(".topContactInfoMobile div p.contactInfoP").css("display","none"),$(".topContactInfoMobile div p.contactInfoP").css("width",""),$(".topContactInfoMobile .contactInfoTopCol1").removeClass("colClass"),$(".topContactInfoMobile .contactInfoTopCol2").removeClass("colClass"),$(".topContactInfoMobile .contactInfoTopCol3").removeClass("colClass"),$(".navigation-bar .miniNav").removeAttr("style")},t=function(){$(".navigation-bar .miniNav").css("float","left")};e();var r=function(){e(),$(".topContactInfoMobile .contactInfoTopCol1").addClass("colClass"),$(".topContactInfoMobile .contactInfoTopCol1 p.contactInfoP").css("width","95%"),$(".topContactInfoMobile .contactInfoTopCol1 p.contactInfoP").toggle()},i=function(){e(),$(".topContactInfoMobile .contactInfoTopCol2").addClass("colClass"),$(".topContactInfoMobile .contactInfoTopCol2 p.contactInfoP").css("width","95%"),$(".topContactInfoMobile .contactInfoTopCol2 p.contactInfoP").toggle()},n=function(){e(),$(".topContactInfoMobile .contactInfoTopCol3").addClass("colClass"),$(".topContactInfoMobile .contactInfoTopCol3 p.contactInfoP").css("width","95%"),$(".topContactInfoMobile .contactInfoTopCol3 p.contactInfoP").toggle()};$(".topContactInfoMobile .contactInfoTopCol1 div.contactInfoClick").click(function(){r(),t(),$(".topContactInfoMobile .contactInfoTopCol1 div.contactInfoClick").click(function(){SD.Responsive.contactInfoTop()})}),$(".topContactInfoMobile .contactInfoTopCol2 div.contactInfoClick").click(function(){i(),t(),$(".topContactInfoMobile .contactInfoTopCol2 div.contactInfoClick").click(function(){SD.Responsive.contactInfoTop()})}),$(".topContactInfoMobile .contactInfoTopCol3 div.contactInfoClick").click(function(){n(),t(),$(".topContactInfoMobile .contactInfoTopCol3 div.contactInfoClick").click(function(){SD.Responsive.contactInfoTop()})})},menus:function(){$("div #mega-menu").addClass("menuHide"),$("#mainNav").click(function(e){$("div #mega-menu").slideToggle("slow",function(){$("div #mega-menu").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #brochure-menu").addClass("menuHide"),$("#mainNav").click(function(e){$("div #brochure-menu").slideToggle("slow",function(){$("div #brochure-menu").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #quickSearchLeft").addClass("menuHide"),$("#quickSearchTitle").click(function(e){$("#quickSearchLeft").slideToggle("slow",function(){$("#quickSearchLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #shoppingCartSummaryLeft").addClass("menuHide"),$("#shoppingCartSummaryTitle").click(function(e){$("#shoppingCartSummaryLeft").slideToggle("slow",function(){$("#shoppingCartSummaryLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #productFiltersLeft").addClass("menuHide"),$("#productFiltersTitle").click(function(e){$("#productFiltersLeft").slideToggle("slow",function(){$("#productFiltersLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #infoBox").addClass("menuHide"),$("#infoBoxTitle").click(function(e){$("#infoBox").slideToggle("slow",function(){$("#infoBox").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #storeSections").addClass("menuHide"),$("#storeSectionsTitle").click(function(e){$("#storeSections").slideToggle("slow",function(){$("#storeSections").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #information").addClass("menuHide"),$("#informationTitle").click(function(e){$("#information").slideToggle("slow",function(){$("#information").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #bestSellerLeft").addClass("menuHide"),$("#bestSellerTitle").click(function(e){$("#bestSellerLeft").slideToggle("slow",function(){$("#bestSellerLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #newProductLeft").addClass("menuHide"),$("#newProductTitle").click(function(e){$("#newProductLeft").slideToggle("slow",function(){$("#newProductLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()}),$("div #couponFieldLeft").addClass("menuHide"),$("#couponFieldTitle").click(function(e){$("#couponFieldLeft").slideToggle("slow",function(){$("#couponFieldLeft").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")}),e.preventDefault()})},m_bResponsiveDeliveryFields:!1,setResponsiveDeliveryFields:function(e){SD.Responsive.m_bResponsiveDeliveryFields=e},getResponsiveDeliveryFields:function(){return SD.Responsive.m_bResponsiveDeliveryFields},orderHistory:function(){$("div#idORDER_TRACKING table tr.cart td:nth-child(1)").prepend("<span>Order Number:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(2)").prepend("<span>Date Ordered:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(3)").prepend("<span>Value:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(4)").prepend("<span>Status:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(5)").prepend("<span>Date Shipped:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(6)").prepend("<span>Carrier:</span>"),$("div#idORDER_TRACKING table tr.cart td:nth-child(7)").prepend("<span>Delivery Tracking:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td").find("span").remove("span"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(1)").prepend("<span>Product Ref:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(2)").prepend("<span>Item:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(3)").prepend("<span>Qty Ordered:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(4)").prepend("<span>Qty Shipped:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(5)").prepend("<span>Cancelled:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(6)").prepend("<span>Qty Back Ordered:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr.cart td:nth-child(7)").prepend("<span>Total Value:</span>"),$("div#idORDER_TRACKING [id^=idORDER_DETAILS_] tr td").each(function(){var e=$(this);e.html(e.html().replace(/&nbsp;/g,""))})},orderHistoryDisplay:function(){$("#idLookupAgain").addClass("hide"),$("#idLOOKUPORDERSFORM fieldset input[value='Lookup Order']").on("click",function(){$("#idLookupAgain").removeClass("hide"),$("#idLOOKUPORDERSFORM").toggle(),$("div#idLOOKUPORDERS > p:nth-child(2)").toggle()}),$("#idORDER_TRACKING").length&&($("#idLookupAgain").removeClass("hide"),$("#idLOOKUPORDERSFORM").toggle(),$("div#idLOOKUPORDERS > p:nth-child(2)").toggle()),$("#idLookupAgain").on("click",function(){$("#idLookupAgain").addClass("hide"),$("#idLOOKUPORDERSFORM").toggle(),$("div#idLOOKUPORDERS > p:nth-child(2)").toggle()})},searchButton:function(){$("div #searchFields").addClass("menuHide"),$("#searchButton").click(function(e){$("div #searchFields").slideToggle("slow",function(){$("div #searchFields").toggleClass("menuHide").toggleClass("menuShow").removeAttr("style")})})},ie9:function(){function e(){var e=!1;if("Microsoft Internet Explorer"==navigator.appName){var t=navigator.userAgent;null!=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})").exec(t)&&(e=9==parseFloat(RegExp.$1))}return e}e()?$("body").addClass("IeOnly"):$("body").removeClass("IeOnly")},android:function(){$("body").removeClass("androidOnly");var e=navigator.userAgent;e.indexOf("Mozilla/5.0")>-1&&e.indexOf("Android ")>-1&&e.indexOf("AppleWebKit")>-1&&!(e.indexOf("Chrome")>-1)&&$("body").addClass("androidOnly")},m_nWindowWidth:0,m_timerResizeID:0,setBrowserSizeListener:function(){SD.Responsive.m_nWindowWidth=SD.Responsive.getBrowserWidth(),$(window).resize(function(){null!=SD.Responsive.m_timerResizeID&&window.clearTimeout(SD.Responsive.m_timerResizeID),SD.Responsive.m_timerResizeID=window.setTimeout(SD.Responsive.resizeIfNeeded,20)})},resizeIfNeeded:function(){SD.Responsive.m_timerResizeID=null,SD.Responsive.m_nWindowWidth!=SD.Responsive.getBrowserWidth()&&(SD.Responsive.m_nWindowWidth=SD.Responsive.getBrowserWidth(),SD.Responsive.moveSizeDependentComponents())},getBrowserWidth:function(){return window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth},moveSizeDependentComponents:function(){SD.Responsive.moveMiniNavItems(),SD.Responsive.menuAlignment()},m_bMiniNavVisible:!1,moveMiniNavItems:function(){var e=$("div.miniNav").is(":visible");SD.Responsive.m_bMiniNavVisible!=e&&(SD.Responsive.m_bMiniNavVisible=e,SD.Responsive.m_bMiniNavVisible?($("#mega-menu").insertAfter(".mainNav"),$("#brochure-menu").insertAfter(".mainNav"),$("#quickSearchLeft").insertAfter(".quickSearchTitle"),$("#shoppingCartSummaryLeft").insertAfter("#shoppingCartSummaryTitle"),$("#productFiltersLeft").insertAfter(".productFiltersTitle"),$("#infoBox").insertAfter("#infoBoxTitle"),$("#storeSections").insertAfter("#storeSectionsTitle"),$("#information").insertAfter("#informationTitle"),$("#bestSellerLeft").insertAfter("#bestSellerTitle"),$("#newProductLeft").insertAfter("#newProductTitle"),$("#couponFieldLeft").insertAfter("#couponFieldTitle")):($("#mega-menu").insertAfter(".miniNav"),$("#brochure-menu").insertAfter(".miniNav"),$("#couponFieldLeft").prependTo("#left-sidebar > .sidebar"),$("#newProductLeft").prependTo("#left-sidebar > .sidebar"),$("#bestSellerLeft").prependTo("#left-sidebar > .sidebar"),$("#information").prependTo("#left-sidebar > .sidebar"),$("#storeSections").prependTo("#left-sidebar > .sidebar"),$("#infoBox").prependTo("#left-sidebar > .sidebar"),$("#productFiltersLeft").prependTo("#left-sidebar > .sidebar"),$("#shoppingCartSummaryLeft").prependTo("#left-sidebar > .sidebar"),$("#quickSearchLeft").prependTo("#left-sidebar > .sidebar")))},quantityButtons:function(){$("fieldset.quantity-box input[type!='hidden']").before('<button type="button" class="dec quantityButton">-</button>').after('<button type="button" class="inc quantityButton">+</button>'),$(".quantityButton").on("click",function(e){var t=$(e.delegateTarget),r=t.parent().find("input");if(r&&$.isNumeric(r.val())){var i=parseInt(r.val(),10),n;n=t.hasClass("inc")?i+1:i>0?i-1:0,r.val(n);var o=$.Event("keyup");o.which=16,r.trigger(o)}})},addNavigateOnClick:function(){$(".navigateOnClick").on("click",function(e){var t=$(e.target).closest(".navigateOnClick"),r=$(t).find("a").filter(":first");r&&(window.location.href=r.attr("href"))})},removeDuplicatedInfo:function(){$(".checkout-cart tr td.cart").each(function(){$(this).find(".mobileHeader:contains('REF') + .floatLeft:contains(' ')").prev().remove(),$(this).find(".floatLeft:contains(' ')").remove()})},resizeImages:function(){$(window).load(function(){window.pg_nSectionImageMaxWidth&&0==window.pg_nSectionImageMaxWidth||$(".section-link-details .section-link-image img, .product-details .product-image img").each(function(){var e=$(this).prop("naturalWidth"),t=e>window.pg_nSectionImageMaxWidth?window.pg_nSectionImageMaxWidth:e;$(this).css({"max-width":t+"px",width:"100%"})}),window.pg_nProductImageMaxWidth&&0==window.pg_nProductImageMaxWidth||$("#product-page-body form .product-image img").each(function(){var e=$(this).prop("naturalWidth"),t=e>window.pg_nProductImageMaxWidth?window.pg_nProductImageMaxWidth:e;$(this).css({"max-width":t+"px",width:"100%"})})})},m_bMainNavVisible:!1,menuAlignment:function(){var e=$("div#mega-menu").is(":visible");if(SD.Responsive.m_bMainNavVisible!=e)if(SD.Responsive.m_bMainNavVisible=e,SD.Responsive.m_bMainNavVisible){$("#mega-menu ul li a, #brochure-menu ul li a").css({height:""});var t=0;$("#mega-menu ul li, #brochure-menu ul li").each(function(){$(this).height()>t&&(t=$(this).height())}),$("#mega-menu ul li a, #brochure-menu ul li a").css({height:t+"px"}),$("#mega-menu ul li ul > li a, #brochure-menu ul li ul > li a").css({height:""})}else $("#mega-menu ul li a, #brochure-menu ul li a").removeAttr("style")}};