1 2const SDK_VERSION="3.69.0";var HTML={DIV:"<div>",BR:"<br/>",IMG:"<img/>",INPUT:"<input>",FORM:"<form>",CLASS:"class",SRC:"src",ALT:"alt",SCRIPT:"script",TYPE_TEXT:"text/javascript",HEAD:"head",CURSOR:"cursor",POINTER:"pointer",CHECKED:":checked",SELECTED:":selected",OPTION:"option",TYPE:"type",FOOTER:"footer"};var CONST={ADD_TO_CART_BUTTON:".addToCartButton",ADD_TO_CART_LAYER:"#cboxContent",ADD_TO_CART_DIV:".addtocart",PAYPAL_CHECKOUT_IMAGE:".payPalCheckoutAddToCartImage",SINGLE_USE_CHECKBOX:"#singleUseCheckboxAddToCart",MINI_CART:".miniCart",MINI_CART_LAYER:"#miniCartLayer",PAYPAL_CHECKOUT_MINI_IMAGE:".payPalCheckoutMiniCartImage",SINGLE_USE_MINI_CHECKBOX:"#singleUseCheckboxMiniCart",NO_PAYMENT_METHODS_MESSAGE:".no-payment-methods-message.headline",FOOTER:".footer",PAYMENT_OPTIONS:"paymentOptions",PAYMENT_OPTIONS_CLASS:".paymentOptions",FOOTER_IMG_SRC:"https://www.paypalobjects.com/webstatic/en_US/i/buttons/cc-badges-ppmcvdam.png",PAYMENT_OPTIONS_TEXT:"Payment options",GLOBAL_MESSAGES:"#globalMessages",PAYPAL_BUTTON_MESSAGE:"#paypalButtonError",VALIDATION_CLASS:".bt_validation",ERROR_DIV:"<div class='alert alert-danger'>",PAYMENT_METHOD_SECTION:"[name=paymentMethodSelection]",BT_LIBS:["https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/client.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/data-collector.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/paypal-checkout.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/apple-pay.min.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/venmo.min.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/local-payment.min.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/client.min.js","https://pay.google.com/gp/p/js/pay.js","https://js.braintreegateway.com/web/"+SDK_VERSION+"/js/google-payment.min.js",],HOSTED_FIELDS:".hostedFields",BILLING_ADDRESS_DATA:".billingAddressData",CREADIT_CARD_LABEL_ID:"#creditCardLabelId",HEADLINE:'headline',DISABLE_CLICK:'disableClick',PAYPAL:'paypal',APPLEPAY_VAL:"applePay",GOOGLEPAY_VAL:"googlePay",SELECT_PAYMENT:'#select_payment',PAYMENT_METHOD_PAYPAL:'#paymentMethodPayPal',PROP_CHECKED:'checked',PAYMENT_TYPE:"payment_type",DEVICE_DATA:"device_data",CARDHOLDER:"cardholder",PAYER_EMAIL:"payer_email",CARD_TYPE:"card_type",CARD_DETAILS:"card_details",PAYMENT_METHOD_NONCE:"bt_payment_method_nonce",ATTR_ACTION:"action",ATTR_METHOD:"method",ATTR_NAME:"name",PAYPAL_CMS_IMAGE_SELECTOR:'.paypalimage .cmsimage img',PAYPAL_CHECKOUT_IMAGE_SELECTOR:'.payPalCheckoutImage .cmsimage img',LIABILITY_SHIFTED:"liability_shifted",ERROR_ALERT_NEGATIVE_CSS_CLASS:'alert alert-danger alert-dismissable',FORM_METHOD_POST:"POST",BRAINTREE_PAYMENT_FORM_ID:'braintree-payment-form',SUBMIT_CILENT_ORDER_POST_FORM_ID:'#submit_silentOrderPostForm',SAVE_PAYMENT_INFO_ID:'#savePaymentInfo',SINGLE_USE_CHECKBOX_ID:'#singleUseCheckbox',ALERT_POSITIVE_BT_VALIDATION_CSS_CLASS:'alert positive bt_validation',NUMBER_ID:"#number",EXPIRATION_DATE_ID:"#expiration-date",CVV_ID:"#cvv",PAYMENT_METHOD_BT_ID:'#paymentMethodBT',USE_DELIVERY_ADDRESS_ID:'#useDeliveryAddress',PAYPAL_EXPRESS_FORM_NAME:"payPalExpress",LOCAL_PAYMENT_FORM_NAME:"localPayment",VENMO_PAYMENT_FORM_NAME:"venmoPayment",VENMO_ACCOUNT:"VenmoAccount",GOOGLE_PAY_ACCOUNT:"AndroidPayCard",GOOGLE_PAY_PAYMENT_FORM_NAME:"googlePayPayment",CUSTOM_SINGLE_USE_CHECKBOX_ID:'#customSingleUseCheckbox',PAYPAL_IS_VALID_ID:'#paypal_is_valid',PAYPAL_EMAIL_ID:'#paypal_email',PAYPAL_EXPRESS_ERROR_ID:'#paypal_express_error',CARD_HOLDER_ID:"#cardholderName",CONTAINER_CLASS:".container-fluid",PAYPAL_VAL:"paypal",BT_VAL:"bt",LOCAL_PAYMENTS_VAL:"lpm",VENMO_VAL:"venmo",PAYPAL_BUTTON_CONTAINER:".paypal-button-in-popup",PAYPAL_BUTTON_CART_CONTAINER:".paypal-button-in-cart-popup",PAYPAL_BUTTON:".paypal-button",MARK_PAYPAL_BUTTON:"#mark-paypal-button",GOOGLE_PAY_BUTTON:"#google-pay-button",LPM_BUTTONS:"#lpm-buttons",VENMO_BUTTON:"#venmo-button",VAULT_FLOW:"vault",CHECKOUT_FLOW:"checkout",TRUE:"true",FALSE:"false",ON_SUCCESS:"onSuccess",INTENT_SALE:"sale",INTENT_ORDER:"order",APPLE_PAY_BUTTON_SELECTOR:".apple-pay-button",HIDE:"hide",PAYMENT_METHOD_APPLE_PAY:"#paymentMethodApplePay",PAYMENT_METHOD_GOOGLE_PAY:"#paymentMethodGooglePay",PAYMENT_METHOD_LOCAL_PAYMENT:"#paymentMethodLpm",PAYMENT_METHOD_VENMO:"#paymentMethodVenmo",APPLE_PAY_BUTTON_CONTAINER:".a
2pple-pay-button-container",APPLEPAY_SELECTOR:"#applepay",VENMO_SELECTOR:"#venmo",GOOGLEPAY_SELECTOR:"#googlepay",INTENT_AUTHORIZE:"authorize",INTENT_CAPTURE:"capture"};var EVENTS={HOVER:"hover",CLICK:"click",CHANGE:"change",};jQuery(document).ready(function($){var deviceData;var client;var paymentMethodResponse;if(isAvailableApplePay()){disableApplePay();$(CONST.APPLEPAY_SELECTOR).removeClass(CONST.HIDE);}else{$(CONST.APPLEPAY_SELECTOR).remove();} 3if((typeof paymentMethodsPage!='undefined')){checkVenmoPaymentMethods();createClientInstance(CONST.GLOBAL_MESSAGES,function(){if(googlePayEnabled==="true"){initialiseGooglePay();} 4configurePayPalAlongWithHostedFields();})} 5if(typeof accountPaymentInfoPage!='undefined'){configureAccountPaymentInfoPage();} 6if((typeof addPaymentMethodsPage!='undefined')){enableShippingAddress="false";checkVenmoPaymentMethods();createClientInstance(CONST.GLOBAL_MESSAGES,function(){if(googlePayEnabled==="true"){initialiseGooglePay();} 7configurePayPalAlongWithHostedFields();})} 8if(typeof shoppingCart!='undefined'&&shoppingCart!=''){configurePaypalShortcut(CONST.PAYPAL_BUTTON);} 9if(typeof isCreditMessagesEnabled!='undefined'&&typeof shoppingCart=='undefined'){configurePageForCreditMessage();}});$(CONST.PAYMENT_METHOD_BT_ID).change(function(){resetHostedFields();createHostedFields();});$(CONST.PAYMENT_METHOD_PAYPAL).change(function(){createPayPalPaymentMarkFlow(createPayPalOptions());});$(CONST.PAYMENT_METHOD_APPLE_PAY).change(function(){createApplePay(createPayPalOptions(),CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID,function(payload){processApplePayResponse(payload);})});$(CONST.PAYMENT_METHOD_GOOGLE_PAY).change(function(){resetHostedFields();if($(CONST.GOOGLE_PAY_BUTTON).length>!1&&$(CONST.GOOGLE_PAY_BUTTON).is(":empty")){setupGooglePayButton();}});$(CONST.PAYMENT_METHOD_LOCAL_PAYMENT).change(function(){resetHostedFields();createLocalPayment();});$(CONST.PAYMENT_METHOD_VENMO).change(function(){resetHostedFields();renderVenmoButton();});$("form[id^='savedPaymentInfoForm']").on('submit',function(e){initialise3dSecure(e);});function addPaymentMethodImagesToFooter(){var paymentOptionsTextDiv=$(HTML.DIV).attr(HTML.CLASS,CONST.PAYMENT_OPTIONS);var br=$(HTML.BR);$(CONST.FOOTER).prepend(br);$(CONST.FOOTER).prepend(br);$(CONST.FOOTER).prepend(paymentOptionsTextDiv);var paymentOptionsImage=$(HTML.IMG);paymentOptionsImage.attr(HTML.SRC,CONST.FOOTER_IMG_SRC);paymentOptionsImage.attr(HTML.ALT,CONST.PAYMENT_OPTIONS_TEXT);$(HTML.FOOTER).children(CONST.CONTAINER_CLASS).append(paymentOptionsImage);} 10function activatePaypalStandardImage(){$(CONST.PAYPAL_CHECKOUT_IMAGE_SELECTOR).hover(function(){$(this).css('cursor','pointer');});} 11function selectIsSingleCheckbox(){if(JSON.parse(singleUse)){$(CONST.SINGLE_USE_CHECKBOX_ID).prop(CONST.PROP_CHECKED,false);initialisePaypal(CONST.PAYPAL_BUTTON);}else{$(CONST.SINGLE_USE_CHECKBOX_ID).prop(CONST.PROP_CHECKED,true);initialisePaypal(CONST.PAYPAL_BUTTON);}} 12function showRemovePaymentDetailsConfirmation(paymentInfoID){$.colorbox({href:"#popup_confirm_payment_removal_"+paymentInfoID,inline:true,maxWidth:"100%",opacity:0.7,width:"320px",onComplete:function(){$(this).colorbox.resize();}});} 13function bindToColorboxClose(){$.colorbox.close();} 14function receiveNewAddressData(selectedAddressID){$.ajax({url:ACC.config.encodedContextPath+'/my-account/receive-address',type:'GET',data:{"selectedAddressCode":selectedAddressID},success:function(result){var selectedAddress=$.parseJSON(result);$("#title").text(selectedAddress.title);$("#firstName").text(selectedAddress.firstName);$("#lastName").text(selectedAddress.lastName);$("#line1").text(selectedAddress.line1);$("#line2").text(selectedAddress.line2);$("#town").text(selectedAddress.town);$("#postalCode").text(selectedAddress.postalCode);$("#country-name").text(selectedAddress.country.name);if(selectedAddress.region!=null){$("#region-name").text(selectedAddress.region.name);}else{$("#region-name").text("");} 15$("#billingAddressId").val(selectedAddress.id);}});$.colorbox.close();};function addBrainTreeLibrary(onBrainTreeLibraryLoaded){var before=Date.now();var loadedScripts=0;for(var i=0;i<CONST.BT_LIBS.length;i++){console.log("Loading library: "+CONST.BT_LIBS[i]+", now: "+Date.now());$.getScript(CONST.BT_LIBS[i]).done(function(script,textStatus){loadedScripts++;console.log("Done, status: "+textStatus+", took: "+(Date.now()-before)+", now: "+Date.now()+", loadedScripts: "+loadedScripts);if(loadedScripts==CONST.BT_LIBS.length){onBrainTreeLibraryLoaded();}}).fail(function(jqxhr,settings,exception){console.error("Fail, exception: "+exception+", took: "+(Date.now()-before)+", now: "+Date.now());});} 16var after=Date.now();console.log("Queueing Load libraries took, ms: "+(after-before));} 17function loadSDK(paypalCheckoutInstance,paypalIntent,commit,flow,onLoad){paypalCheckoutInstance.getClientId().then(function(id){let vault=flow===CONST.VAULT_FLOW;var importRequest={};var disableFunding=!creditEnabled?"credit":"";importRequest["client-id"]=id;importRequest.commit=commit;importRequest.intent=paypalIntent==="sale"||vault?"capture":paypalIntent;importRequest.components="buttons,messages";if(vault){importRequest.vault=vault;} 18if(typeof disableMarkFunding==='undefined'){disableFunding+=disableFunding!==""?",card":"card";} 19else if(disableMarkFunding!==""){disableFunding+=disableFunding!==""?","+disableMarkFunding:disableFunding;} 20if(disableFunding!==""){importRequest["disable-funding"]=disableFunding;} 21if(typeof currency!=='undefined'&¤cy!==''){importRequest.currency=currency;} 22if(typeof braintreeLocale!='undefined'&&braintreeLocale!==''){importRequest.locale=braintreeLocale;} 23paypalCheckoutInstance.loadPayPalSDK(importRequest,function(){onLoad();});});} 24function createClientInstance(errorDivId,onClientIstanceLoaded){if((typeof clientToken!='undefined'&&clientToken!='')&&(typeof braintree!='undefined'&&braintree!='')){braintree.client.create({authorization:clientToken},function(clientErr,clientInstance){if(clientErr){handleClientError(clientErr);return;} 25if(typeof advancedFraudToolsEnabled!='undefined'){createDataCollector({client:clientInstance,paypal:JSON.parse(advancedFraudToolsEnabled)})} 26client=clientInstance;onClientIstanceLoaded();});}else{var errorsComponent=$(errorDivId);errorsComponent.empty();if(errorDivId===CONST.GLOBAL_MESSAGES){errorsComponent.append(createErrorDiv(ACC.addons.braintreeaddon['braintree.message.use.saved.payments']));}else if(errorDivId===CONST.PAYPAL_EXPRESS_ERROR_ID){errorsComponent.append(createErrorDiv(ACC.addons.braintreeaddon['braintree.message.try.refresh']));}}
26} 27function handleClientError(error){if(typeof error!='undefined'||error!='undefined'){if('User did not enter a payment method'!=error.message){var errorMsg=(typeof getErrorMessage(error.code)==="undefined")?ACC.addons.braintreeaddon['braintree.message.error.provider']+' '+error.message:getErrorMessage(error.code);$(CONST.GLOBAL_MESSAGES).empty();$(CONST.GLOBAL_MESSAGES).append(createErrorDiv(errorMsg));} 28if('User did not enter a payment method'===error.message){$(CONST.GLOBAL_MESSAGES).empty();$(CONST.GLOBAL_MESSAGES).append(createErrorDiv(ACC.addons.braintreengaddon['braintree.message.error.provider'] 29+' '+error.message));$('html, body').animate({scrollTop:$(CONST.GLOBAL_MESSAGES).offset().top-$("#headernav").height()},2000);var error='["'+ACC.addons.braintreengaddon['braintree.message.error.provider']+' '+error.message+'"]';checkoutDataLayerPush(error);}}} 30function createDataCollector(configObj){braintree.dataCollector.create(configObj,function(error,dataCollectorInstance){if(error){handleClientError(error);return;}else{deviceData=dataCollectorInstance.deviceData;}});} 31function getPaypalFlow(){if(paypalIntent==CONST.INTENT_ORDER){storeInVault='false';} 32if(getStoreInVault()&&!creditEnabled){return CONST.VAULT_FLOW;} 33return CONST.CHECKOUT_FLOW;} 34function getStoreInVault(){return storeInVault!=''&&storeInVault!=undefined&&(storeInVault==CONST.ON_SUCCESS||storeInVault==CONST.TRUE);} 35function createErrorDiv(message){var errorComponent=$(HTML.DIV).attr(HTML.CLASS,CONST.ERROR_ALERT_NEGATIVE_CSS_CLASS);errorComponent.prepend(message);errorComponent.prepend('<button class="close" aria-hidden="true" data-dismiss="alert" type="button">Ã</button>');return errorComponent;} 36function resetHostedFields(){$(CONST.NUMBER_ID).empty();$(CONST.EXPIRATION_DATE_ID).empty();$(CONST.CVV_ID).empty();$(CONST.CARD_HOLDER_ID).empty();};function checkIntentOption(paypalIntent){var isIntentValid=true;if(paypalIntent!=CONST.INTENT_SALE&&paypalIntent!=CONST.INTENT_ORDER&&paypalIntent!=CONST.INTENT_AUTHORIZE&&paypalIntent!=CONST.INTENT_CAPTURE){isIntentValid=false;return isIntentValid;}else{return isIntentValid;}} 37function processExpressCheckoutForm(paypalResponse,forceVault){var payPalForm;var isSavePaymentInfo;if((typeof addPaymentMethodsPage!='undefined')){payPalForm=createForm(CONST.PAYPAL_EXPRESS_FORM_NAME,ACC.config.encodedContextPath+"/braintree/paypal/checkout/add-default-payment-method");}else{payPalForm=createForm(CONST.PAYPAL_EXPRESS_FORM_NAME,ACC.config.encodedContextPath+"/braintree/paypal/checkout/express");} 38if($(CONST.SAVE_PAYMENT_INFO_ID+':'+CONST.PROP_CHECKED).val()===CONST.TRUE||forceVault===true){isSavePaymentInfo=createHiddenParameter("isSaved",CONST.TRUE);}else{isSavePaymentInfo=createHiddenParameter("isSaved",CONST.FALSE);} 39var paymentType=createHiddenParameter("payPalData",JSON.stringify(paypalResponse));var token=ACC.config.CSRFToken;var realToken=createHiddenParameter("CSRFToken",token);const currentUrl=new URL(window.location.href);var orderCode="";if(currentUrl.searchParams.get("orderCode")!=null){var sanitizedParam=DOMPurify.sanitize(currentUrl.searchParams.get("orderCode"));orderCode=createHiddenParameter("orderCode",sanitizedParam);} 40var collectDeviceData=createHiddenParameter("device_data",this.deviceData);payPalForm.append($(isSavePaymentInfo));payPalForm.append($(collectDeviceData));payPalForm.append($(paymentType));payPalForm.append($(realToken));payPalForm.append($(orderCode));payPalForm.appendTo('body');$.blockUI({message:$('#blockUISpinnerId')});payPalForm.submit();var billingAddressSameAsShipping='No';if($('input[name=useDeliveryAddress]:checked').val()=='true'){billingAddressSameAsShipping='Yes';} 41(window.dataLayer=window.dataLayer||[]).push({'event':'ecommerce.checkout_option','ecommerce.checkout_option':{'v':4,'actionField':{'step':4,'option':[{'paymentType':'Paypal'},{'billingAddressSameAsShipping':billingAddressSameAsShipping}]}}});} 42function processResponce(responce){var submitForm=$('#'+CONST.BRAINTREE_PAYMENT_FORM_ID);var useDelivery=createHiddenParameter("use_delivery_address",$(CONST.USE_DELIVERY_ADDRESS_ID).is(HTML.CHECKED));var paymentType=createHiddenParameter(CONST.PAYMENT_TYPE,responce.type);var cardType=createHiddenParameter(CONST.CARD_TYPE,responce.details.cardType);
42var cardDetails=createHiddenParameter(CONST.CARD_DETAILS,responce.details.lastFour);var isLiabilityShifted='';var paymentNonce=createHiddenParameter(CONST.PAYMENT_METHOD_NONCE,responce.nonce);submitForm.append($(paymentNonce));if(typeof responce.liabilityShifted!='undefined'){isLiabilityShifted=responce.liabilityShifted;} 43var liabilityShifted=createHiddenParameter(CONST.LIABILITY_SHIFTED,isLiabilityShifted);submitForm.append($(liabilityShifted));var deviceData=createHiddenParameter(CONST.DEVICE_DATA,this.deviceData);var cardholder=createHiddenParameter(CONST.CARDHOLDER,$(CONST.CARD_HOLDER_ID).val());submitForm.append($(deviceData));submitForm.append($(useDelivery));submitForm.append($(paymentType));submitForm.append($(cardType));submitForm.append($(cardDetails));submitForm.append($(cardholder));$.blockUI({message:$('#blockUISpinnerId')});submitForm.submit()} 44function createForm(name,action){var form=$(HTML.FORM).attr(CONST.ATTR_ACTION,action).attr(CONST.ATTR_NAME,name).attr(CONST.ATTR_METHOD,CONST.FORM_METHOD_POST);return form;} 45function createHiddenParameter(name,value){var input=$(HTML.INPUT).attr(HTML.TYPE,"hidden").attr(CONST.ATTR_NAME,name).val(value);return input;} 46function checkSavedPaymentMethods(paymentType,isAvailable){let payments=$('.paymentType');var isEnabledPayment=isPaymentEnabled(paymentType);payments.each(function(){if(($(this).val()==paymentType)&&(!isAvailable||!isEnabledPayment)){$(this).next().remove();$(this).remove();console.log($(this).val());}else{if(canRemoveHide($(this).val(),paymentType)){$(this).next().removeClass(CONST.HIDE);}}});if(typeof paymentMethodsPage!='undefined'){if(!anotherPaymentPresent(payments,paymentType)&&(!isAvailable||!isEnabledPayment)){$('#savePaymentButton').remove();}else{$('#savePaymentButton').removeClass(CONST.HIDE);}}} 47function canRemoveHide(elem,type){if(elem===CONST.VENMO_ACCOUNT&&type!=CONST.VENMO_ACCOUNT){return false;} 48if(elem===CONST.GOOGLE_PAY_ACCOUNT&&type!=CONST.GOOGLE_PAY_ACCOUNT){return false;} 49return true;} 50function anotherPaymentPresent(payments,paymentType){return payments.toArray().some(value=>value['value']!=paymentType);} 51function isPaymentEnabled(paymentType){if(paymentType===CONST.VENMO_ACCOUNT){return venmoEnabled;}else if(paymentType===CONST.GOOGLE_PAY_ACCOUNT){return googlePayEnabled;} 52return false;} 53function configurePayPalAlongWithHostedFields(){$(CONST.GLOBAL_MESSAGES).children(CONST.VALIDATION_CLASS).remove();$(CONST.PAYMENT_METHOD_SECTION).change(function(){paymentMethodM();});selectPaymentMethod();} 54function selectPaymentMethod(){if(typeof isCreditCardSelect!='undefined'&&isCreditCardSelect!=''&&isCreditCardSelect=="true"){$(CONST.PAYMENT_METHOD_BT_ID).prop(CONST.PROP_CHECKED,true);$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).attr('type','submit');}else if(typeof isSingleUseSelect!='undefined'&&isSingleUseSelect!=''){$(CONST.PAYMENT_METHOD_PAYPAL).prop(CONST.PROP_CHECKED,false);}else{$(CONST.PAYMENT_METHOD_PAYPAL).prop(CONST.PROP_CHECKED,false);$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).attr('type','button');if(isAvailableVenmo()){$(CONST.PAYMENT_METHOD_VENMO).prop(CONST.PROP_CHECKED,true);$(CONST.VENMO_SELECTOR).removeClass(CONST.HIDE);}else{$(CONST.VENMO_SELECTOR).remove();}} 55triggerSelectedPaymentMethod();} 56function disableRadioButton(){var radioButtons=$(CONST.PAYMENT_METHOD_SECTION);if(radioButtons.length===1){radioButtons.prop(CONST.PROP_CHECKED,true);radioButtons.hide();}else if(radioButtons.length===0){$(CONST.NO_PAYMENT_METHODS_MESSAGE).removeClass('hidden');paymentMethod();}else if(!radioButtons.is(HTML.CHECKED)){radioButtons.filter(':first').prop(CONST.PROP_CHECKED,true);}} 57function triggerCheckedPaymentMethod(){var radioButtons=$(CONST.PAYMENT_METHOD_SECTION);radioButtons.filter(HTML.CHECKED).trigger(EVENTS.CHANGE);} 58function triggerSelectedPaymentMethod(){if(isBrainTreeMethodSelectedM){resetHostedFields();createHostedFields();$(CONST.MARK_PAYPAL_BUTTON).hide();} 59else if(isPayPalMethodSelectedM){createPayPalPaymentMarkFlow(createPayPalOptions());}} 60function paymentMethodM(){$(this).find('option:selected').val();if(isPayPalMethodSelectedM()){$(CONST.MARK_PAYPAL_BUTTON).show();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.VENMO_BUTTON).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.LPM_BUTTONS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.PAYPAL_CMS_IMAGE_SELECTOR).removeClass(CONST.DISABLE_CLICK);$(CONST.SELECT_PAYMENT).val(CONST.PAYPAL);
60$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();createPayPalPaymentMarkFlow(createPayPalOptions());}else if(isBrainTreeMethodSelectedM()){$(CONST.LPM_BUTTONS).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.VENMO_BUTTON).hide();$(CONST.HOSTED_FIELDS).show();$(CONST.BILLING_ADDRESS_DATA).show();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).show();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).addClass(CONST.HEADLINE);$(CONST.PAYPAL_CMS_IMAGE_SELECTOR).addClass(CONST.DISABLE_CLICK);$(CONST.SELECT_PAYMENT).val("bt");resetHostedFields();createHostedFields();}else if(isGooglePaySelected()){$(CONST.GOOGLE_PAY_BUTTON).show();$(CONST.VENMO_BUTTON).hide();$(CONST.LPM_BUTTONS).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.SELECT_PAYMENT).val("googlePay");$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();setupGooglePayButton();}} 61function paymentMethod(){$(this).find('option:selected').val();if(isPayPalMethodSelected()){$(CONST.MARK_PAYPAL_BUTTON).show();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.VENMO_BUTTON).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.LPM_BUTTONS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.PAYPAL_CMS_IMAGE_SELECTOR).removeClass(CONST.DISABLE_CLICK);$(CONST.SELECT_PAYMENT).val(CONST.PAYPAL);$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();if(paypalIntent===CONST.INTENT_ORDER){$("#savePaymentInfoComponent").hide();}else{$("#savePaymentInfoComponent").show();}}else if(isApplePaySelected()){$(CONST.LPM_BUTTONS).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.VENMO_BUTTON).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).show();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.SELECT_PAYMENT).val(CONST.APPLEPAY_VAL);$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();$("#savePaymentInfoComponent").hide();$("#savePaymentInfoComponent").prop("checked",false);}else if(isGooglePaySelected()){$(CONST.GOOGLE_PAY_BUTTON).show();$(CONST.VENMO_BUTTON).hide();$(CONST.LPM_BUTTONS).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();$("#savePaymentInfoComponent").show();}else if(isLocalPaymentsSelected()){$(CONST.LPM_BUTTONS).show();$(CONST.VENMO_BUTTON).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();$("#savePaymentInfoComponent").hide();$("#savePaymentInfoComponent").prop("checked",false);}else if(isVenmoSelected()){$(CONST.VENMO_BUTTON).show();$(CONST.LPM_BUTTONS).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).removeClass(CONST.HEADLINE);$(CONST.GLOBAL_MESSAGES).children('.bt_validation').remove();$("#savePaymentInfoComponent").show();}else if(isBrainTreeMethodSelected()){$(CONST.LPM_BUTTONS).hide();$(CONST.GOOGLE_PAY_BUTTON).hide();$(CONST.VENMO_BUTTON).hide();$(CONST.HOSTED_FIELDS).show();$(CONST.BILLING_ADDRESS_DATA).show();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).show();$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.CREADIT_CARD_LABEL_ID).addClass(CONST.HEADLINE);$(CONST.PAYPAL_CMS_IMAGE_SELECTOR).addClass(CONST.DISABLE_CLICK);$(CONST.SELECT_PAYMENT).val("bt");$("#savePaymentInfoComponent").show();}else{$(CONST.MARK_PAYPAL_BUTTON).hide();$(CONST.LPM_BUTTONS).hide();$(CONST.HOSTED_FIELDS).hide();$(CONST.BILLING_ADDRESS_DATA).hide();$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).hide();$("#savePaymentInfoComponent").hide();if(typeof addPaymentMethodsPage!='undefined'){$(".account-section-header").hide();}}} 62function isBrainTreeMethodSelectedM(){return $(CONST.PAYMENT_METHOD_SECTION).children(HTML.OPTION).filter(HTML.SELECTED).val()==CONST.BT_VAL;} 63function isPayPalMethodSelectedM(){return $(CONST.PAYMENT_METHOD_SECTION).children(HTML.OPTION).filter(HTML.SELECTED).val()==CONST.PAYPAL_VAL;} 64function isApplePaySelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.APPLEPAY_VAL||$('input[name=onlyApplePaySelected]').val()=='true';} 65function isBrainTreeMethodSelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.BT_VAL;} 66function isPayPalMethodSelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.PAYPAL_VAL||$('input[name=onlyPayPalSelected]').val()=='true';} 67function isLocalPaymentsSelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.LOCAL_PAYMENTS_VAL||$('input[name=onlyLocalPaymentsSelected]').val()=='true';} 68function isVenmoSelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.VENMO_VAL||$('input[name=onlyVenmoSelected]').val()=='true';} 69function isGooglePaySelected(){return $('input[name=paymentMethodSelection]:radio:checked').val()==CONST.GOOGLEPAY_VAL||$('input[name=onlyGooglePaySelected]').val()=='true';};function createApplePay(options,buttonSelector,processResponseCallback){braintree.applePay.create({client:client},function(applePayErr,applePayInstance){if(applePayErr){console.error('Error creating applePayInstance:',applePayErr);return;} 70var createApplePaySession=function(){if(typeof paymentMethodsPage!='undefined'){var paymentRequest=applePayInstance.createPaymentRequest({total:{label:options.flow,amount:amount},requiredShippingContactFields:['email']});}else{var paymentRequest=applePayInstance.createPaymentRequest({requiredBillingContactFields:['postalAddress','name'],requiredShippingContactFields:['postalAddress','name','phone','email'],total:{label:options.flow,amount:amount}});} 71var session=new ApplePaySession(1,paymentRequest);session.onvalidatemerchant=function(event){applePayInstance.performValidation({validationURL:event.validationURL,displayName:"Electronics"},function(error,merchantSession){if(error){console.error(error);session.abort();return;} 72session.completeMerchantValidation(merchantSession);});};session.onpaymentauthorized=function(event){applePayInstance.tokenize({token:event.payment.token},function(error,payload){if(error){console.error(error);session.completePayment(ApplePaySession.STATUS_FAILURE);return;} 73var shippingContact=event.payment.shippingContact;var billingContact=event.payment.billingContact;session.completePayment(ApplePaySession.STATUS_SUCCESS);var payloadCopy={};payloadCopy.nonce=payload.nonce;payloadCopy.details={};payloadCopy.type=payload.type;payloadCopy.details.email=shippingContact.emailAddress;if(typeof paymentMethodsPage=='undefined'){payloadCopy.details.firstName=shippingContact.givenName;payloadCopy.details.lastName=shippingContact.familyName;payloadCopy.details.phone=shippingContact.phoneNumber;payloadCopy.details.billingAddress={line1:billingContact.addressLines[0],line2:billingContact.addressLines[1],city:billingContact.locality,state:billingContact.administrativeArea.toUpperCase(),postalCode:billingContact.postalCode,countryCode:billingContact.countryCode.toUpperCase()};payloadCopy.details.shippingAddress={line1:shippingContact.addressLines[0],line2:shippingContact.addressLines[1],city:shippingContact.locality,state:shippingContact.administrativeArea.toUpperCase(),postalCode:shippingContact.postalCode,countryCode:shippingContact.countryCode.toUpperCase()};} 74processResponseCallback(payloadCopy);});};session.begin();};var promise=ApplePaySession.canMakePaymentsWithActiveCard(applePayInstance.merchantIdentifier);promise.then(function(canMakePaymentsWithActiveCard){if(!canMakePaymentsWithActiveCard){disableApplePay();createApplePaySession=null;return;}else{enableApplePay();}});$(buttonSelector).unbind(EVENTS.CLICK);$(buttonSelector).click(function(){if(createApplePaySession!=null){createApplePaySession();}});});} 75function processApplePayResponse(payload){var email=payload.details.email;if(payload.nonce!=null){$(CONST.PAYPAL_IS_VALID_ID).val("true");var errorComponent=$(HTML.DIV).attr(HTML.CLASS,CONST.ALERT_POSITIVE_BT_VALIDATION_CSS_CLASS);
75errorComponent.prepend(ACC.addons.braintreeaddon['braintree.message.paypal.error']+email);$(CONST.GLOBAL_MESSAGES).append(errorComponent);$(CONST.PAYPAL_EMAIL_ID).val(email);} 76$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).unbind(EVENTS.CLICK);$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).trigger(EVENTS.CLICK,[true]);processResponce(payload);} 77function processApplePayResponseExpressCheckout(response){processExpressCheckoutForm(response,false);} 78function showApplePay(){$(CONST.APPLE_PAY_BUTTON_CONTAINER).removeClass(CONST.HIDE);} 79function disableApplePay(){showApplePay();$(CONST.APPLE_PAY_BUTTON_SELECTOR).addClass("disabled-button");$(CONST.APPLE_PAY_BUTTON_SELECTOR).unbind('click');} 80function enableApplePay(){showApplePay();$(CONST.APPLE_PAY_BUTTON_SELECTOR).removeClass("disabled-button");} 81function removeApplePay(){$(CONST.APPLE_PAY_BUTTON_CONTAINER).remove();$(CONST.APPLEPAY_SELECTOR).remove();} 82function isAvailableApplePay(){return typeof window.ApplePaySession!="undefined"&&ApplePaySession.canMakePayments();};var googlePaymentsClient;var googlePayPaymentInstance;function initialiseGooglePay(){var paymentsClient=getGooglePaymentClient();braintree.googlePayment.create({client:client,googlePayVersion:2,googleMerchantId:googleMerchantId}).then(function(googlePaymentInstance){return paymentsClient.isReadyToPay({apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:googlePaymentInstance.createPaymentDataRequest().allowedPaymentMethods,existingPaymentMethodRequired:true}).then(function(isReadyToPay){if(isReadyToPay.result){googlePayPaymentInstance=googlePaymentInstance;if(checkGooglePayAvailability()){$('#googlepay').removeClass(CONST.HIDE);checkSavedPaymentMethods(CONST.GOOGLE_PAY_ACCOUNT,isReadyToPay.result);}else{renderGooglePayButton(paymentsClient,googlePaymentInstance);}}else{console.log("reuslt false")}}).catch(function(err){console.error('An error occurred during creation:',err.message);});});} 83function setupGooglePayButton(){var paymentsClient=getGooglePaymentClient();let waitForGooglePayInstance=setInterval(function(){if(typeof googlePayPaymentInstance!=="undefined"){clearInterval(waitForGooglePayInstance);if(googlePayPaymentInstance!=''){renderGooglePayButton(paymentsClient,googlePayPaymentInstance);}} 84console.log("wait for GooglePayInstance to be loaded")},10);} 85function checkGooglePayAvailability(){if(typeof paymentMethodsPage!='undefined'||typeof addPaymentMethodsPage!='undefined'||typeof accountPaymentInfoPage!='undefined'){return true;} 86return false;} 87function renderGooglePayButton(paymentsClient,googlePaymentInstance){var buttonContainers=document.getElementsByClassName("google_pay_container");const button=paymentsClient.createButton({onClick:()=>onGooglePaymentButtonClicked(paymentsClient,googlePaymentInstance)});if(typeof paymentMethodsPage=='undefined'||paymentMethodsPage===''){button.firstChild.className+=' google-pay-button-style';}else{button.firstChild.className+=' google-pay-mark-button-style';} 88Array.from(buttonContainers).forEach(function(item){if(!item.hasChildNodes()){item.appendChild(button);}});} 89function getGooglePaymentClient(){if(typeof googlePaymentsClient=='undefined'||googlePaymentsClient===''){var localEnvironment=environment.toUpperCase()==='PRODUCTION'?'PRODUCTION':'TEST';googlePaymentsClient=new google.payments.api.PaymentsClient({environment:localEnvironment});} 90return googlePaymentsClient;} 91function onGooglePaymentButtonClicked(paymentsClient,googlePayPaymentInstance){var paymentDataRequest=getGooglePaymentDataRequest(googlePayPaymentInstance);var cardPaymentMethod=paymentDataRequest.allowedPaymentMethods[0];paymentDataRequest.emailRequired=true;cardPaymentMethod.parameters.billingAddressRequired=true;cardPaymentMethod.parameters.billingAddressParameters={format:'FULL',phoneNumberRequired:true};if((typeof paymentMethodsPage=='undefined'||paymentMethodsPage=='')&&(typeof addPaymentMethodsPage=='undefined'||addPaymentMethodsPage=='')){paymentDataRequest.shippingAddressRequired=true;} 92var googlePayPaymentData;paymentsClient.loadPaymentData(paymentDataRequest).then(function(paymentData){googlePayPaymentData=paymentData;return googlePayPaymentInstance.parseResponse(paymentData);}).then(function(result){processGooglePayResponse(result,googlePayPaymentData);}).catch(function(err){console.error('An error occurred:',err.message);});} 93function getGooglePaymentDataRequest(googlePayPaymentInstance){var paymentDataRequest;if(typeof addPaymentMethodsPage!='undefined'){paymentDataRequest=googlePayPaymentInstance.createPaymentDataRequest({transactionInfo:{countryCode:googlePayCountryCode,currencyCode:currency,totalPriceStatus:'FINAL',totalPrice:'0.0'}});}else{paymentDataRequest=googlePayPaymentInstance.createPaymentDataRequest({transactionInfo:{countryCode:googlePayCountryCode,currencyCode:currency,totalPriceStatus:'FINAL',totalPrice:amount}});} 94return paymentDataRequest;} 95function processGooglePayResponse(response,googlePayPaymentData){var payload=convertGoogleDataToPayloadObject(response,googlePayPaymentData);processExpressCheckoutForm(payload,false);} 96function convertGoogleDataToPayloadObject(response,googlePayPaymentData){var payloadCopy={};payloadCopy.nonce=response.nonce;payloadCopy.details={};payloadCopy.type=response.type;payloadCopy.details.email=googlePayPaymentData.email;payloadCopy.details.phone=googlePayPaymentData.paymentMethodData.info.billingAddress.phoneNumber;payloadCopy.details.billingAddress={line1:googlePayPaymentData.paymentMethodData.info.billingAddress.address1,line2:googlePayPaymentData.paymentMethodData.info.billingAddress.address2,city:googlePayPaymentData.paymentMethodData.info.billingAddress.locality,state:googlePayPaymentData.paymentMethodData.info.billingAddress.administrativeArea.toUpperCase(),postalCode:googlePayPaymentData.paymentMethodData.info.billingAddress.postalCode,countryCode:googlePayPaymentData.paymentMethodData.info.billingAddress.countryCode.toUpperCase()};if(typeof paymentMethodsPage=='undefined'&&typeof addPaymentMethodsPage=='undefined'){payloadCopy.details.firstName=googlePayPaymentData.shippingAddress.name;payloadCopy.details.shippingAddress={line1:googlePayPaymentData.shippingAddress.address1,line2:googlePayPaymentData.shippingAddress.address2,city:googlePayPaymentData.shippingAddress.locality,state:googlePayPaymentData.shippingAddress.administrativeArea.toUpperCase(),postalCode:googlePayPaymentData.shippingAddress.postalCode,countryCode:googlePayPaymentData.shippingAddress.countryCode.toUpperCase()};} 97return payloadCopy;};function createHostedFields(){braintree.hostedFields.create({client:client,styles:{":focus":{"color":"blue"},".valid":{"color":"green"},".invalid":{"color":"red"}},fields:{number:{selector:CONST.NUMBER_ID,placeholder:"Card Number"},expirationDate:{selector:CONST.EXPIRATION_DATE_ID,placeholder:"MM/YY"},cvv:{selector:CONST.CVV_ID,placeholder:"CVV"}}},function(hostedFieldsErr,hostedFieldsInstance){if(hostedFieldsErr){handleClientError(hostedFieldsErr);return;} 98$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).unbind(EVENTS.CLICK);$(CONST.SUBMIT_CILENT_ORDER_POST_FORM_ID).click(function(){var ispaypal='creditcard';var billingAddressSameAsShipping='No';hostedFieldsInstance.tokenize(function(tokenizeErr,payload){if(tokenizeErr){handleClientError(tokenizeErr)}else{if((typeof secure3d!='undefined'&&JSON.parse(secure3d))&&("CreditCard"==payload.type)){verify3DSecure(client,payload);}else{processResponce(payload);}}});if($('input[name=useDeliveryAddress]:checked').val()=='true'){billingAddressSameAsShipping='Yes';} 99(window.dataLayer=window.dataLayer||[]).push({'event':'ecommerce.checkout_option','ecommerce.checkout_option':{'v':4,'actionField':{'step':4,'option':[{'paymentType':'creditcard'},{'billingAddressSameAsShipping':billingAddressSameAsShipping}]}}});});});} 100function initialise3dSecure(e){e.preventDefault();var value=$(document).find('input[name="selectedPaymentMethodNonce"]').val();var paymentMethod=$(document).find('input[name="selectedPaymentMethod"]').val();if(!$.parseJSON(secure3d)||paymentMethod==="PayPal"){e.currentTarget.submit();} 101braintree.client.create({authorization:clientToken},function(clientErr,clientInstance){if(clientErr){handleClientError(clientErr);return;} 102braintree.threeDSecure.create({version:2,client:clientInstance},function(err,threeDSecure){threeDSecure.verifyCard({onLookupComplete:function(data,next){console.log(JSON.stringify(data));next();},amount:amount,nonce:value,addFrame:function(err,iframe){threeDSContainer=$(HTML.DIV);$(threeDSContainer).append(iframe);ACC.colorbox.open("",{inline:true,href:threeDSContainer,onComplete:function(){$(this).colorbox.resize();}});},removeFrame:function(){ACC.colorbox.close();}},function(error,response){if(error){show3DSecureMessage(error);return;}else{var liabilityShifted=response.liabilityShifted;$(document).find('input[name="selectedPaymentMethodNonce"]').val(response.nonce);if(liabilityShifted||JSON.parse(skip3dSecureLiabilityResult)){e.currentTarget.submit();}else{show3DSecureMessage(ACC.addons.braintreeaddon['braintree.message.unsecured.card']);}}});});});return false;} 103function verify3DSecure(clientInstance,paymentResponse){configurePayPalAlongWithHostedFields();braintree.threeDSecure.create({version:2,client:clientInstance},function(err,threeDSecure){threeDSecure.verifyCard({onLookupComplete:function(data,next){next();},amount:amount,nonce:paymentResponse.nonce,addFrame:function(err,iframe){threeDSContainer=$(HTML.DIV);$(threeDSContainer).append(iframe);ACC.colorbox.open("",{inline:true,href:threeDSContainer,onComplete:function(){$(this).colorbox.resize();}});},removeFrame:function(){ACC.colorbox.close();}},function(error,response){if(error){show3DSecureMessage(error);return;}else{paymentResponse.nonce=response.nonce;var liabilityShifted=response.liabilityShifted;if(liabilityShifted||JSON.parse(skip3dSecureLiabilityResult)){paymentResponse.liabilityShifted=liabilityShifted;processResponce(paymentResponse);}else{show3DSecureMessage(ACC.addons.braintreeaddon['braintree.message.unsecured.card']);}}});});}
104function show3DSecureMessage(message){$(CONST.GLOBAL_MESSAGES).children(CONST.VALIDATION_CLASS).remove();var errorComponent=CONST.ERROR_DIV+message+HTML.DIV;$(CONST.GLOBAL_MESSAGES).append(errorComponent);};function createPayPalPaymentMarkFlow(paypalOptions){var payPalButtonConfigObj=eval("({"+payPalButtonConfig.replace('\"','"')+"})");if(checkIntentOption(paypalIntent)===false){var globalErrorsComponent=$(CONST.MARK_PAYPAL_BUTTON);globalErrorsComponent.empty();globalErrorsComponent.append(createErrorDiv(ACC.addons.braintreeaddon['braintree.message.incorect.intent']))}else{if($(CONST.MARK_PAYPAL_BUTTON).is(":empty")){braintree.paypalCheckout.create({client:client},function(paypalCheckoutErr,paypalCheckoutInstance){let commit=paypalIntent===CONST.INTENT_SALE&&userAction==='true';loadSDK(paypalCheckoutInstance,paypalIntent,commit,paypalOptions.flow,function(){console.log("PayPal Sdk was loaded");payPalCheckoutRenderButton(paypalCheckoutInstance,CONST.MARK_PAYPAL_BUTTON,paypalOptions,commit,payPalButtonConfigObj);})});}}} 105function createPayPalExpressCheckout(paypalOptions,payPalButtonContainer){if($(payPalButtonContainer).length>0){var payPalButtonConfigObj=eval("({"+payPalButtonConfig.replace('\"','"')+"})");let commit=paypalIntent===CONST.INTENT_SALE&&userAction==='true';var isIntentValid=checkIntentOption(paypalIntent);if(isIntentValid===false){var payPalErrorComponent=$(CONST.PAYPAL_EXPRESS_ERROR_ID);payPalErrorComponent.empty();payPalErrorComponent.append(createErrorDiv(ACC.addons.braintreeaddon['braintree.message.incorect.intent']));return;} 106braintree.paypalCheckout.create({client:client},function(paypalCheckoutErr,paypalCheckoutInstance){if(typeof paypal==='undefined'){loadSDK(paypalCheckoutInstance,paypalIntent,commit,paypalOptions.flow,function(){console.log("PayPal Sdk was loaded");$(payPalButtonContainer).html('');payPalCheckoutRenderButton(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonConfigObj);});} 107else{payPalCheckoutRenderButton(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonConfigObj);}});}} 108function payPalCheckoutRenderButton(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle){let isCheckoutFlow=getPaypalFlow().localeCompare(CONST.CHECKOUT_FLOW);if(isCheckoutFlow===0){if(creditEnabled&&getStoreInVault()){renderCheckoutBillingButtons(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle);} 109else{renderCheckoutFlowPayPalButtons(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle);}} 110else{renderVaultFlowPayPalButtons(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle);}} 111function renderCheckoutFlowPayPalButtons(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle){try{paypal.Buttons({style:payPalButtonStyle,locale:braintreeLocale,commit:commit,createOrder:function(){return paypalCheckoutInstance.createPayment(paypalOptions);},onApprove:function(data){data.intent=paypalIntent;return paypalCheckoutInstance.tokenizePayment(data).then(function(payload){processExpressCheckoutForm(payload,false);});},onCancel:function(){console.log('User cancel PayPal flow');},onError:function(err){console.error('Error: '+err,err);handlePayPalClientError(err);}}).render(payPalButtonContainer);} 112catch(err){handlePayPalButtonError(err.message);}} 113function renderVaultFlowPayPalButtons(paypalCheckoutInstance,payPalButtonContainer,paypalOptions,commit,payPalButtonStyle){try{paypal.Buttons({style:payPalButtonStyle,locale:braintreeLocale,commit:commit,createBillingAgreement:function(){return paypalCheckoutInstance.createPayment(paypalOptions);},onApprove:function(data){return paypalCheckoutInstance.tokenizePayment(data).then(function(payload){processExpressCheckoutForm(payload,typeof payPalShouldBeSaved!=="undefined"?payPalShouldBeSaved:false);});},onCancel:function(data){console.log('User cancel PayPal flow');},onError:function(err){console.error('Error: '+err,err);handlePayPalClientError(err);}}).render(payPalButtonContainer);} 114catch(err){handlePayPalButtonError(err.message);}} 115function renderCheckoutBillingButtons(paypalCheckoutInstance,payPalButtonContainer,payp
115alOptions,commit,payPalButtonStyle){try{paypal.Buttons({style:payPalButtonStyle,locale:braintreeLocale,commit:commit,createOrder:function(){return paypalCheckoutInstance.createPayment(paypalOptions);},onApprove:function(data){return paypalCheckoutInstance.tokenizePayment(data).then(function(payload){processExpressCheckoutForm(payload,typeof payPalShouldBeSaved!=="undefined"?payPalShouldBeSaved:false);});},onCancel:function(data){console.log('User cancel PayPal flow');},onError:function(err){console.error('Error: '+err,err);handlePayPalClientError(err);}}).render(payPalButtonContainer);} 116catch(err){handlePayPalButtonError(err.message);}} 117function handlePayPalClientError(error){if(typeof error!='undefined'||error!='undefined'){if('User did not enter a payment method'!=error.message&&'PAYPAL_POPUP_CLOSED'!=error.code){$('#paypal_express_error').empty();var messageText=error.message;if(typeof messageText==='undefined'||messageText==='undefined'){}else{var errorMsg=(typeof getErrorMessage(error.code)==="undefined")?ACC.addons.braintreeaddon['braintree.message.error.provider']+' '+messageText:getErrorMessage(error.code);$(CONST.GLOBAL_MESSAGES).empty();$(CONST.GLOBAL_MESSAGES).append(createErrorDiv(errorMsg));}}}} 118function handlePayPalButtonError(errorMsg){if(typeof errorMsg!='undefined'||errorMsg!='undefined'){if(typeof paymentMethodsPage!="undefined"){$(CONST.PAYPAL_BUTTON_MESSAGE).empty();$(CONST.PAYPAL_BUTTON_MESSAGE).append(createErrorDiv(errorMsg));} 119$('#paypal_express_error').empty();$(CONST.PAYPAL_EXPRESS_ERROR_ID).empty();$(CONST.PAYPAL_EXPRESS_ERROR_ID).append(createErrorDiv(errorMsg));}};function createLocalPayment(){return braintree.localPayment.create({client:client,merchantAccountId:currencyMerchantAccountId}).then(function(localPaymentInstance){function createLocalPaymentClickListener(type){return function(event){event.preventDefault();localPaymentInstance.startPayment({paymentType:type,amount:amount,fallback:{url:endpointURL+'/braintree/checkout/lpm/fallback',buttonText:'Complete Payment',},currencyCode:currency,shippingAddressRequired:false,onPaymentStart:function(data,start){var processUrl=ACC.config.encodedContextPath+'/braintree/checkout/lpm/savePayment';var params={"paymentId":data.paymentId};return $.post(processUrl,params).then(function(res){start();});}},function(startPaymentError,payload){if(startPaymentError){if(startPaymentError.code==='LOCAL_PAYMENT_POPUP_CLOSED'){console.error('Customer closed Local Payment popup.');}else{console.error('Error!',startPaymentError);}}else{processLocalPaymentMethod(payload);}});};} 120lpmids.forEach(function(lpm){document.getElementById(lpm).addEventListener('click',createLocalPaymentClickListener(lpm))});});} 121function processLocalPaymentMethod(response){var submitForm=createForm(CONST.PAYPAL_EXPRESS_FORM_NAME,ACC.config.encodedContextPath+"/braintree/checkout/lpm/process");var paymentNonce=createHiddenParameter(CONST.PAYMENT_METHOD_NONCE,response.nonce);var payerEmail=createHiddenParameter(CONST.PAYER_EMAIL,response.details.email);var deviceData=createHiddenParameter(CONST.DEVICE_DATA,response.correlationId);var cardholder=createHiddenParameter(CONST.CARDHOLDER,$(CONST.CARD_HOLDER_ID).val());var token=ACC.config.CSRFToken;var realToken=createHiddenParameter("CSRFToken",token);submitForm.append($(paymentNonce));submitForm.append($(payerEmail));submitForm.append($(deviceData));submitForm.append($(cardholder));submitForm.append($(realToken));submitForm.appendTo('body');submitForm.submit()};function renderVenmoButton(){var venmoButton=document.getElementById('venmo-button');$(CONST.VENMO_BUTTON).removeClass(CONST.HIDE);var profileId;if(typeof venmoProfileId!=='undefined'){profileId=venmoProfileId;} 122braintree.venmo.create({client:client,profileId:profileId,},function(venmoErr,venmoInstance){if(venmoErr){console.error('Error creating Venmo:',venmoErr);return;} 123if(!venmoInstance.isBrowserSupported()){console.log('Browser does not support Venmo');return;} 124displayVenmoButton(venmoInstance);if(venmoInstance.hasTokenizationResult()){venmoInstance.tokenize().then(handleVenmoSuccess).catch(handleVenmoError);}});function displayVenmoButton(venmoInstance){venmoButton.style.display='block';venmoButton.addEventListener('click',function(){venmoButton.disabled=true;venmoInstance.tokenize(function(tokenizeErr,payload){venmoButton.removeAttribute('disabled');
124if(tokenizeErr){handleVenmoError(tokenizeErr);}else{handleVenmoSuccess(payload);}});});} 125function handleVenmoError(err){if(err.code==='VENMO_CANCELED'){console.log('App is not available or user aborted payment flow');}else if(err.code==='VENMO_APP_CANCELED'){console.log('User canceled payment flow');}else{console.error('An error occurred:',err.message);}} 126function handleVenmoSuccess(payload){processVenmoResponse(payload,false);console.log('Got a payment method nonce:',payload.nonce);console.log('Venmo user:',payload.details.username);}} 127function processVenmoResponse(response,forceVault){var submitForm;var isSavePaymentInfo;var token=ACC.config.CSRFToken;var realToken=createHiddenParameter("CSRFToken",token);var collectDeviceData=createHiddenParameter(CONST.DEVICE_DATA,deviceData);if(typeof addPaymentMethodsPage!='undefined'){submitForm=createForm(CONST.VENMO_PAYMENT_FORM_NAME,ACC.config.encodedContextPath+"/braintree/paypal/checkout/add-payment-method");var paymentType=createHiddenParameter("payPalData",JSON.stringify(response));var selectedAddressCode=createHiddenParameter("selectedAddressCode",deliveryAddressId);submitForm.append($(selectedAddressCode));submitForm.append($(paymentType));}else{submitForm=createForm(CONST.VENMO_PAYMENT_FORM_NAME,ACC.config.encodedContextPath+"/braintree/checkout/venmo/process");var paymentNonce=createHiddenParameter(CONST.PAYMENT_METHOD_NONCE,response.nonce);var userName=createHiddenParameter("username",response.details.username);submitForm.append($(paymentNonce));submitForm.append($(userName));} 128if($(CONST.SAVE_PAYMENT_INFO_ID+':'+CONST.PROP_CHECKED).val()===CONST.TRUE||forceVault===true){isSavePaymentInfo=createHiddenParameter("isSaved",CONST.TRUE);}else{isSavePaymentInfo=createHiddenParameter("isSaved",CONST.FALSE);} 129submitForm.append($(isSavePaymentInfo));submitForm.append($(collectDeviceData));submitForm.append($(realToken));submitForm.appendTo('body');submitForm.submit();} 130function isAvailableVenmo(){return venmoEnabled&&braintree.venmo.isBrowserSupported();} 131function checkVenmoPaymentMethods(){checkSavedPaymentMethods(CONST.VENMO_ACCOUNT,isAvailableVenmo());};function configurePageForCreditMessage(){if(typeof braintree=='undefined'||braintree==''){addBrainTreeLibrary(function(){initialiseCreditMessage();});}else{initialiseCreditMessage();}} 132function initialiseCreditMessage(){if(typeof braintree!='undefined'&&braintree!=''){createClientInstance(CONST.PAYPAL_EXPRESS_ERROR_ID,function(){braintree.paypalCheckout.create({client:client},function(paypalCheckoutErr,paypalCheckoutInstance){if(typeof paypal==="undefined"){let commit=paypalIntent===CONST.INTENT_SALE&&userAction==='true';loadSDK(paypalCheckoutInstance,paypalIntent,commit,getPaypalFlow(),function(){console.log("PayPal Sdk was loaded");});}});});}};function configurePaypalShortcut(payPalButtonClass){if(typeof braintree=='undefined'||braintree==''){addBrainTreeLibrary(function(){createClientInstance(CONST.PAYPAL_EXPRESS_ERROR_ID,function(){initialisePaypal(payPalButtonClass);initialiseGooglePay();initialiseApplePay();});});}else{createClientInstance(CONST.PAYPAL_EXPRESS_ERROR_ID,function(){initialisePaypal(payPalButtonClass);initialiseGooglePay();initialiseApplePay();})}} 133function initialisePaypal(payPalButtonClass){createPayPalExpressCheckout(createPayPalOtionsExpressCheckout(),payPalButtonClass);} 134function initialiseApplePay(){if(isAvailableApplePay()&&applePayEnabled){disableApplePay();createApplePay(createPayPalOtionsExpressCheckout(),CONST.APPLE_PAY_BUTTON_SELECTOR,function(payload){processApplePayResponseExpressCheckout(payload);});}else{$(CONST.APPLE_PAY_BUTTON_CONTAINER).remove();}} 135function createPayPalOtionsExpressCheckout(){let paypalFlow=getPaypalFlow();var paypalOptions={flow:paypalFlow,enableShippingAddress:JSON.parse(enableShippingAddress),enableBillingAddress:true,locale:braintreeLocale,};if(paypalFlow==CONST.CHECKOUT_FLOW){if(paypalIntent!=undefined&&paypalIntent!==""){paypalOptions.intent=paypalIntent;} 136paypalOptions.amount=amount;paypalOptions.currency=currency;if(creditEnabled&&getStoreInVault()){paypalOptions.requestBillingAgreement=true;paypalOptions.billingAgreementDetails={description:billingAgreementDescription}}} 137else if(paypalFlow==CONST.VAULT_FLOW){paypalOptions.billingAgreementDescription=billingAgreementDescription;} 138if(typeof dbaName!='undefined'&&dbaName!=''){if(dbaName.indexOf('*')>-1){paypalOptions.displayName=dbaName.substr(0,dbaName.indexOf('*'));}} 139return paypalOptions;};function createPayPalOptions(){var paypalOptions;resetHostedFields();var paypalFlow=getPaypalFlow();var enableShippingAddressValue=JSON.parse(enableShippingAddress);var paypalOptions={flow:paypalFlow,enableShippingAddress:enableShippingAddressValue,enableBillingAddress:true,locale:braintreeLocale,shippingAddressEditable:false};if((typeof addPaymentMethodsPage!='undefined')){paypalOptions.billingAgreementDescription=billingAgreementDescription;}else{if(paypalFlow==CONST.CHECKOUT_FLOW){if(paypalIntent!=undefined&&paypalIntent!==""){paypalOptions.intent=paypalIntent;} 140paypalOptions.amount=amount;if(typeof currency!=='undefined'){paypalOptions.currency=currency;} 141if(enableShippingAddressValue){paypalOptions.shippingAddressOverride={recipientName:recipientName,line1:streetAddress,line2:extendedAddress,city:locality,countryCode:countryCodeAlpha2,postalCode:postalCode,state:region,phone:phone}} 142if(creditEnabled&&getStoreInVault()){paypalOptions.requestBillingAgreement=true,paypalOptions.billingAgreementDetails={description:billingAgreementDescription}}}else if(paypalFlow==CONST.VAULT_FLOW){if(paypalIntent!=undefined&&paypalIntent!==""){paypalOptions.intent=paypalIntent;} 143paypalOptions.amount=amount;paypalOptions.currency=currency;
143if(enableShippingAddressValue){paypalOptions.shippingAddressOverride={recipientName:recipientName,line1:streetAddress,line2:extendedAddress,city:locality,countryCode:countryCodeAlpha2,postalCode:postalCode,state:region,phone:phone}} 144paypalOptions.billingAgreementDescription=billingAgreementDescription;if(typeof dbaName!='undefined'&&dbaName!=''){if(dbaName.indexOf('*')>-1){paypalOptions.displayName=dbaName.substr(0,dbaName.indexOf('*'));}}}} 145return paypalOptions;};function configureAccountPaymentInfoPage(){if(typeof braintree=='undefined'||braintree==''||typeof google=='undefined'){addBrainTreeLibrary(function(){createClientInstance(CONST.GLOBAL_MESSAGES,function(){checkVenmoPaymentMethods();initialiseGooglePay();})});}else{checkVenmoPaymentMethods();initialiseGooglePay();}};(()=>{var t={887(t,e,n){var r,a,o;o=function(){var t,e,n=document,r=n.getElementsByTagName("head")[0],a="push",o="readyState",i="onreadystatechange",s={},c={},d={},l={};function u(t,e){for(var n=0,r=t.length;n<r;++n)if(!e(t[n]))return!1;return 1}function p(t,e){u(t,function(t){return e(t),1})}function m(e,n,r){e=e[a]?e:[e];var o=n&&n.call,i=o?n:r,g=o?e.join(""):n,h=e.length;function w(t){return t.call?t():s[t]}function v(){if(!--h)for(var t in s[g]=1,i&&i(),d)u(t.split("|"),w)&&!p(d[t],w)&&(d[t]=[])}return setTimeout(function(){p(e,function e(n,r){return null===n?v():(r||/^https?:\/\//.test(n)||!t||(n=-1===n.indexOf(".js")?t+n+".js":t+n),l[n]?(g&&(c[g]=1),2==l[n]?v():setTimeout(function(){e(n,!0)},0)):(l[n]=1,g&&(c[g]=1),void f(n,v)))})},0),m}function f(t,a){var s,c=n.createElement("script");c.onload=c.onerror=c[i]=function(){c[o]&&!/^c|loade/.test(c[o])||s||(c.onload=c[i]=null,s=1,l[t]=2,a())},c.async=1,c.src=e?t+(-1===t.indexOf("?")?"?":"&")+e:t,r.insertBefore(c,r.lastChild)}return m.get=f,m.order=function(t,e,n){!function r(a){a=t.shift(),t.length?m(a,r):m(a,e,n)}()},m.path=function(e){t=e},m.urlArgs=function(t){e=t},m.ready=function(t,e,n){t=t[a]?t:[t];var r,o=[];return!p(t,function(t){s[t]||o[a](t)})&&u(t,function(t){return s[t]})?e():(r=t.join("|"),d[r]=d[r]||[],d[r][a](e),n&&n(o)),m},m.done=function(t){m([null],t)},m},t.exports?t.exports=o():void 0===(a="function"==typeof(r=o)?r.call(e,n,e,t):r)||(t.exports=a)},468(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Heartbeat=void 0;class n{static startSendingHeartBeatToIframe(t){const e=n.getHeartBeatInterval(t);setInterval(()=>{parent.postMessage({pk:Math.random(),gatewayId:"heartBeatGateway",eventId:"heartBeat",data:{location:document.location.href}},"*")},e)}static getHeartBeatInterval(t){return parseInt(t.getAttribute("data-smartedit-heart-beat-interval")||n.DEFAULT_HEARTBEAT_INTERVAL,10)}}e.Heartbeat=n,n.DEFAULT_HEARTBEAT_INTERVAL="500"},522(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});const r=n(887);class a{static getWebappScriptElementFromDocument(t){if(t.currentScript){if(!(t.currentScript instanceof HTMLScriptElement))throw new Error("getWebappScriptElementFromDocument() found non html script element");return t.currentScript}const e=t.querySelector(`script#${a.webappScriptId}`);if(e)return e;const n=t.querySelectorAll(`script[src*=${a.webappScriptName}]`);if(1!==n.length)throw new Error(`SmartEdit unable to load - invalid ${a.webappScriptName} script tag`);return n.item(0)}static extractQueryParameter(t,e){const n={};return t.replace(/([?&])([^&=]+)=([^&]+)?/g,(t,e,r,a)=>(n[r]=a,"")),n[e]}static injectJS(t,e=0){t.length&&e<t.length&&a.getScriptJs()(t[e],function(){a.injectJS(t,e+1)})}static injectCSS(t,e){if(!t||!e)return;const n=t.getElementsByTagName("link");for(const r of e)if(!this.findLinkByHref(n,r)){const e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=r,t.appendChild(e)}}static injectThemeCSS(t,e){if(!e||e.length<2)return;const n=t.getElementsByTagName("link");for(let r=0;r<e.length;r++)if(!this.findLinkByHref(n,e[r])){const n=document.createElement("link");n.rel="stylesheet",n.type="text/css",n.id=`themeCss${r}`,n.href=e[r],t.appendChild(n)}}static findLinkByHref(t,e){let n=0,r=t.item(n),a=!1;for(;null!==r;){if(r.href===e){a=!0;break}n++,r=t.item(n)}return a}static updateThemeCss(t){if(!t||t.length<2)return;
145const e=document.getElementById("themeCss0"),n=document.getElementById("themeCss1");e&&n&&(e.href=t[0],n.href=t[1])}static getScriptJs(){return r}}a.webappScriptId="smartedit-injector",a.webappScriptName="webApplicationInjector",a.smarteditMainCssId="smarteditMainCss",e.default=a},977(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});const r=n(522);class a{static convertWhitelistingToRegexp(t){return(t=t||[]).map(t=>{const e=t.trim();if(a.whitelistingConfigRegex.test(e)){const t=["^","$"].join(e.replace(/\./g,"\\.").replace(/\*/g,"[-a-zA-Z0-9]*"));return new RegExp(t)}throw new Error(a.whitelistingErrorMsg)})}static getWhitelistFromScriptElement(t,e){let n=[a.getSanitizedHostFromLocation(e.location)];const o=t.getAttribute(a.allowOriginAttributeName)||"";o&&(n=n.concat(o.split(",")));let i="";const s=e.document.createElement("a");s.href=t.src;const c=r.default.extractQueryParameter(s.search,a.allowOriginQueryParamName);return c&&(i=decodeURI(c),i&&i.split(",").forEach(t=>n.push(t))),n}static isAllowed(t,e,n){if(!/^(https?:)\/\/([-.a-zA-Z0-9]+(:[0-9]{1,5})?)$/.test(t))return!1;const r=e.document.createElement("a");return r.href=t,("https:"!==e.location.protocol||"https:"===r.protocol)&&n.some(t=>(t.lastIndex=0,t.test(a.getSanitizedHostFromLocation(r))))}static getSanitizedHostFromLocation(t){const e=t.port||("https"===t.protocol.replace(/:/g,"")?"443":"80");return`${t.hostname}:${e}`}}a.whitelistingConfigRegex=new RegExp(/^(([-*a-zA-Z0-9]+[.])*([-a-zA-Z0-9]+[.]))?[-a-zA-Z0-9]+(:[0-9]{1,5})$/),a.allowOriginAttributeName="data-smartedit-allow-origin",a.allowOriginQueryParamName="allow-origin",a.whitelistingErrorMsg="\n\t\tAllowed whitelist characters are a-z, A-Z, 0-9, -, period, or *\n\t\tThe wildcard * can be used to represent a prefixed domain, Good example: *.domain.com:80\n\t\tbut not a suffix or port, Bad examples: subdomain.*.com subdomain.domain.com:*.\n\t\tEvery whitelisting must contain a specific port.\n\t",e.default=a}},e={};function n(r){var a=e[r];if(void 0!==a)return a.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,n),o.exports}(()=>{"use strict";const t=n(468),e=n(522),r=n(977),a="smartEditBootstrap",o=e.default.getWebappScriptElementFromDocument(document);if(!o)throw new Error("Unable to location webappInjector script");const i=r.default.getWhitelistFromScriptElement(o,window),s=r.default.convertWhitelistingToRegexp(i);function c(){window.removeEventListener("load",c),window.removeEventListener("storefrontload",c),parent.postMessage({pk:Math.random(),gatewayId:a,eventId:"bootstrapSmartEdit",data:{location:document.location.href}},"*")}function d(t){parent.postMessage({gatewayId:a,eventId:"promiseAcknowledgement",data:{pk:t}},"*")}function l(t){parent.postMessage({gatewayId:a,eventId:"promiseReturn",data:{pk:t,type:"success"}},"*")}parent.postMessage({pk:Math.random(),gatewayId:a,eventId:"loading",data:{location:document.location.href,version:"0.0.5"}},"*"),window.addEventListener("load",c),window.addEventListener("storefrontload",c),window.addEventListener("message",function(t){const n=t.data.gatewayId===a,o=n&&"bundle"===t.data.eventId,i=n&&"theme"===t.data.eventId;if(!o&&!i)return;if(!r.default.isAllowed(t.origin,window,s))throw new Error(t.origin+" is not allowed to override this storefront.");if(o)return void function(t,n){if(window.smartedit=window.smartedit||{},d(t),n){const t=document.getElementsByTagName("head")[0];!function(t){if(!t.properties)return;for(const e in t.properties)t.properties.hasOwnProperty(e)&&(window.smartedit[e]=t.properties[e])}(n),function(t){if(!(t.js&&t.js.length>0))return;let n;n="string"==typeof t.js[0]?t.js:t.js.filter(t=>!t.namespaceToCheck||!window[t.namespaceToCheck]).map(t=>t.src);e.default.injectJS(n)}(n),n.css&&n.css.length>0&&e.default.injectCSS(t,n.css),n.themeCss&&n.themeCss.length>
1450&&e.default.injectThemeCSS(t,n.themeCss)}l(t)}(t.data.pk,t.data.data.resources);i&&(c=t.data.pk,u=t.data.data.resources,d(c),e.default.updateThemeCss(u.themeCss),l(c));var c,u},!1),window.onbeforeunload=function(){parent.postMessage({pk:Math.random(),gatewayId:a,eventId:"unloading",data:{location:document.location.href}},"*")},t.Heartbeat.startSendingHeartBeatToIframe(o)})()})();(function(){window.smartedit=window.smartedit||{};var onReprocessListeners=[];window.smartedit.reprocessPage=function(){onReprocessListeners.forEach(function(callbackFn){try{callbackFn();} 146catch(e){}});};window.smartedit.addOnReprocessPageListener=function(callbackFn){if(!_isFunction(callbackFn)){throw new Error('SmartEditAddon - Cannot register page reprocessing listener. Provided callback must be a function.');} 147onReprocessListeners.push(callbackFn);};function _isFunction(obj){return(obj&&typeof obj==='function');}})();(function(){if(window.Imager){Imager.prototype.replaceImagesBasedOnScreenDimensions=function(image){var availableWidths=[],srcARRAY,cwidth;const DATA_MEDIA="data-media";if($(image).attr(DATA_MEDIA)!==undefined){var eMedia=$(image).attr(DATA_MEDIA);$(image).removeAttr(DATA_MEDIA);eMedia=$.parseJSON(eMedia);$.each(eMedia,function(key,value){availableWidths.push(parseInt(key));});$(image).data("width",availableWidths);$(image).data("media",eMedia);} 148srcARRAY=$(image).data("media");cwidth=Imager.getClosestValue(window.innerWidth,$.extend([],$(image).data("width")));if(!srcARRAY[cwidth]||image.src==srcARRAY[cwidth]){return;} 149image.src=srcARRAY[cwidth];};} 150window.smartedit.addOnReprocessPageListener(function(){ACC.global.initImager();ACC.global.reprocessImages();if($(".navigation--top .myAccountLinksHeader").length===0){$('.js-myAccount-root').empty();$(".js-secondaryNavAccount > ul").empty();ACC.navigation.myAccountNavigation();} 151ACC.carousel.bindCarousel();ACC.autocomplete.bindSearchAutocomplete();});})();;
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.