{"version":3,"sources":["ecom.cart.js"],"names":["e4","cart","init","jQuery","length","event","util","registerEvents","saveInternalBackLink","bindEvents","orderline","html","on","setTimeout","remove","product","popover","timeoutDuration","trigger","placement","document","target","addClass","removeClass","updateQuantityInfo","msg","goToInternalBackLink","find","preventDefault","jVoucherModal","ajax","data","serialize","jsonData","updateContent","modal","juuls","ui","confirm","header","type","EcomOrderVoucherCode","shippingId","currentTarget","dataset","EcomCartShippingmethodID","objAjaxSettings","fnCallback","jCart","extend","url","settings","ecom","method","dataType","cache","beforeSend","done","setCheckoutButtonState","Object","keys","orderChangeInfo","fail","a","b","c","console","error","jAlerts","jCheckoutBtns","boolHasOrderLinesChangedInfo","each","index","domBtn","referrer","indexOf","location","protocol","host","sessionStorage","setItem","storageKeyInternalBackLink","strInternalBackLink","getItem","href","addProduct","objProductFormData","jDocument","domAddedForm","objProductData","CartCmd","ProductID","VariantID","Quantity","Redirect","fromForm","isPlainObject","productadd","disableAddToCartButtonIfLowOnStock","productQuantity","productadded","removeProduct","isEmptyObject","reload","update","orderlines","orderSummery","voucher","freeFreight","shippingMethods","voucherButton","updateTotalPrice","price","updated","domForm","currentProductId","val","currentValue","parseInt","currentDataStock","i","orderlinesIds","orderlinesQuantity","prop","intQuantity","jCartQuantity","isNumeric","_jsonData","empty","strPrice","toggleFocus","debounce","value","ruleMax","debounceDelay","input","saveComment","hideCommentHelpText","delete","updateOrderlineQuantity","setAmountAndUpdate","jOrderline","domNode","closest","amount","quantity","jForm","intOrderlineQuantityOriginal","intOrderlineQuantity","orderlineincrease","orderlinedecrease","setFocus","attr","objOrderlineData","orderlinedelete","key","log","productCategory","orderlinedeleted","currencyCode","name","productName","number","productNumber","productPrice","category","domElm","jQuantityInput","intPrevValue","intNewValue","disabled","domInput","join","noop","showCommentHelpText","strId","filter","focus","getIdByProduct","objProduct","strReturnValue","id","variantId","select","timeout","jBody","bodyNoAdjustmentClass","is","hide","clearTimeout","show","window","width","setPosition","first","jCartMsg","lastAdded","objPosition","jCartMsgDialog","jHeader","jNavItemCart","objCartMsgPosition","objCartMsgReferencePosition","get","getBoundingClientRect","top","hasClass","Math","floor","bottom","right","left","maxWidth","css","msgHideDelay"],"mappings":"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","file":"ecom.cart.js","sourcesContent":["e4.cart = {\r\n init: function () {\r\n if ( jQuery( '.js-e-cart-form' ).length === 1 ) {\r\n e4.cart.event = e4.util.registerEvents( 'load loaded update updated productadd productadded productremove productremoved orderlinedelete orderlinedeleted orderlineincrease orderlinedecrease', 'cart' );\r\n e4.cart.saveInternalBackLink();\r\n e4.cart.bindEvents();\r\n e4.cart.orderline.bindEvents();\r\n jQuery( '.js-e-cart-quantity' ).html( jQuery( '.js-e-cart-quantity-inline' ).html() );\r\n //e4.cart.updateQuantityInfo();\r\n jQuery( '.js-e-cart' ).on( 'update.e4.cart', function () {\r\n setTimeout( function () {\r\n jQuery( '.popover' ).remove();\r\n }, e4.product.popover.timeoutDuration );\r\n } ).on( 'updated.e4.cart', function () {\r\n jQuery( function () {\r\n jQuery( '[data-toggle=\"popover\"]' ).popover( {\r\n trigger: 'manual',\r\n placement: 'top'\r\n } );\r\n } );\r\n jQuery( document ).on( 'show.bs.popover', function ( event ) {\r\n jQuery( event.target ).addClass( 'has-popover-shown' );\r\n } );\r\n jQuery( document ).on( 'hidden.bs.popover', function ( event ) {\r\n jQuery( event.target ).removeClass( 'has-popover-shown' );\r\n } );\r\n } );\r\n }\r\n else if ( jQuery( '.js-e-cart-quantity' ).length > 0 ) {\r\n e4.cart.event = e4.util.registerEvents( 'productadd productadded productremove productremoved', 'cart' );\r\n e4.cart.updateQuantityInfo();\r\n e4.cart.msg.init();\r\n }\r\n },\r\n bindEvents: function () {\r\n jQuery( document ).on( 'click', '.js-e-cart-back-link', e4.cart.goToInternalBackLink ).find( '.js-e-cart-form' ).on( 'submit', function ( event ) {\r\n event.preventDefault();\r\n } );\r\n jQuery( document ).on( 'submit', '.js-e-cart-voucher-form', function ( event ) {\r\n event.preventDefault();\r\n var jVoucherModal = jQuery( '#CartVoucherModal' );\r\n e4.cart.ajax( {\r\n data: jQuery( event.target ).serialize()\r\n }, function ( jsonData ) {\r\n e4.cart.updateContent( jsonData );\r\n if(jVoucherModal.find('.js-e-cart-voucher-error').length === 0){\r\n jQuery( '#CartVoucherModal' ).modal( 'hide' );\r\n }\r\n } );\r\n } );\r\n \r\n jQuery(document).on('click', '.js-juuls-cart-remove-voucher', function(){\r\n juuls.ui.confirm( {\r\n header: 'Slet rabatkode?',\r\n type: 'confirm'\r\n }, function ( ) {\r\n e4.cart.ajax( {\r\n data: {\r\n EcomOrderVoucherCode: ''\r\n }\r\n }, function ( jsonData ) {\r\n e4.cart.updateContent( jsonData );\r\n\r\n } );\r\n } );\r\n \r\n })\r\n \r\n jQuery(document).on( 'click', '.js-juuls-cart-shipping-method', function ( event ) {\r\n var shippingId = event.currentTarget.dataset.shippingId;\r\n jQuery( '#ShippingMethodsModal' ).modal( 'hide' );\r\n e4.cart.ajax( {\r\n data: {\r\n EcomCartShippingmethodID: shippingId\r\n }\r\n }, function ( jsonData ) {\r\n e4.cart.updateContent( jsonData );\r\n \r\n } );\r\n\r\n } );\r\n \r\n },\r\n ajax: function ( objAjaxSettings, fnCallback ) {\r\n var jCart = jQuery( '.js-e-cart' ),\r\n jqXHR = jQuery.ajax( jQuery.extend( {\r\n url: e4.settings.ecom.cart.url,\r\n method: 'POST',\r\n dataType: 'json',\r\n cache: false,\r\n beforeSend: function () {\r\n if ( jCart.length === 1 ) {\r\n jQuery( '.js-e-cart-main, .js-e-cart-aside' ).find( '.js-e-loading-overlay' ).addClass( 'is-loading' );\r\n }\r\n }\r\n }, objAjaxSettings ) );\r\n jqXHR.done( function ( data ) {\r\n if ( typeof fnCallback === 'function' ) {\r\n fnCallback( data );\r\n }\r\n if ( jCart.length === 1 ) {\r\n jQuery( '.js-e-cart-main, .js-e-cart-aside' ).find( '.js-e-loading-overlay' ).removeClass( 'is-loading' );\r\n e4.cart.setCheckoutButtonState(Object.keys(data.cart.orderChangeInfo).length > 0);\r\n }\r\n } ).fail( function ( a, b, c ) {\r\n console.error( a, b, c );\r\n } );\r\n },\r\n setCheckoutButtonState: (boolHasOrderLinesChangedInfo) =>{\r\n const jAlerts = jQuery('.js-go-to-checkout-alert');\r\n const jCheckoutBtns = jQuery('a[href=\"/shop/cart/checkout\"]');\r\n if(boolHasOrderLinesChangedInfo){\r\n jCheckoutBtns.each((index, domBtn) =>{\r\n const jBtn = jQuery(domBtn);\r\n jBtn.addClass('disabled');\r\n jAlerts.removeClass('d-none');\r\n });\r\n \r\n } else{\r\n jCheckoutBtns.removeClass('disabled');\r\n jAlerts.addClass('d-none');\r\n }\r\n },\r\n saveInternalBackLink: function () {\r\n if ( document.referrer.indexOf( location.protocol + '//' + location.host ) === 0 && document.referrer.indexOf( '/shop/cart/checkout' ) === -1 ) {\r\n sessionStorage.setItem( e4.settings.ecom.cart.storageKeyInternalBackLink, document.referrer );\r\n }\r\n },\r\n goToInternalBackLink: function ( event ) {\r\n var strInternalBackLink = sessionStorage.getItem( e4.settings.ecom.cart.storageKeyInternalBackLink );\r\n if ( strInternalBackLink !== null && strInternalBackLink.indexOf( location.protocol + '//' + location.host ) === 0 ) {\r\n event.preventDefault();\r\n location.href = strInternalBackLink;\r\n }\r\n },\r\n addProduct: function ( objProductFormData, fnCallback ) {\r\n var jDocument = jQuery( document ),\r\n jCart = jDocument.find( '.js-e-cart' ),\r\n domAddedForm = null;\r\n var objProductData = {\r\n CartCmd: 'add',\r\n ProductID: '',\r\n VariantID: '',\r\n Quantity: 1,\r\n Redirect: false\r\n };\r\n if ( objProductFormData.fromForm ) {\r\n domAddedForm = objProductFormData.fromForm;\r\n delete objProductFormData.fromForm;\r\n }\r\n if ( jQuery.isPlainObject( objProductFormData ) ) {\r\n jQuery.extend( objProductData, objProductFormData );\r\n }\r\n else if ( jQuery.type( objProductFormData ) === 'string' ) {\r\n objProductData.ProductID = objProductFormData;\r\n }\r\n jDocument.trigger( e4.cart.event.productadd, objProductData );\r\n if ( domAddedForm !== null ) {\r\n jQuery( domAddedForm ).find( 'button[type=\"submit\"]' ).removeClass( 'add-more' ).addClass( 'adding' );\r\n }\r\n e4.cart.ajax( {\r\n data: objProductData\r\n }, function ( jsonData ) {\r\n if ( jCart.length === 1 ) {\r\n e4.cart.updateContent( jsonData );\r\n }\r\n e4.cart.disableAddToCartButtonIfLowOnStock( jsonData );\r\n e4.cart.updateQuantityInfo( jsonData.cart.productQuantity );\r\n if ( typeof fnCallback === 'function' ) {\r\n fnCallback( jsonData );\r\n }\r\n if ( domAddedForm !== null ) {\r\n //jQuery( '.js-e-search-form-inline' )\r\n jsonData.domAddedForm = domAddedForm;\r\n jQuery( domAddedForm ).find( 'button[type=\"submit\"]' ).removeClass( 'adding' ).addClass( 'added' );\r\n setTimeout( function () {\r\n jQuery( domAddedForm ).find( 'button[type=\"submit\"]' ).removeClass( 'added' ).addClass( 'add-more' );\r\n }, 500 );\r\n }\r\n jDocument.trigger( e4.cart.event.productadded, jsonData );\r\n } );\r\n },\r\n removeProduct: function () {\r\n },\r\n updateContent: function ( jsonData ) {\r\n var jCart = jQuery( '.js-e-cart' );\r\n if ( jQuery.isEmptyObject( jsonData ) === true ) {\r\n return location.reload();\r\n }\r\n jCart.trigger( e4.cart.event.update );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"orderlines\"]' ).html( jsonData.cart.orderlines );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"orderSummery\"]' ).html( jsonData.cart.orderSummery );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"voucher\"]' ).html( jsonData.cart.voucher );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"freeFreight\"]' ).html( jsonData.cart.freeFreight );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"shippingMethods\"]' ).html( jsonData.cart.shippingMethods );\r\n jCart.find( '.js-e-cart-block-container[data-key=\"voucherButton\"]' ).html( jsonData.cart.voucherButton );\r\n e4.cart.updateQuantityInfo( jsonData.cart.productQuantity );\r\n e4.cart.updateTotalPrice(jsonData.cart.price );\r\n jCart.trigger( e4.cart.event.updated );\r\n },\r\n disableAddToCartButtonIfLowOnStock: function ( jsonData ) {\r\n //var currentProductId = jQuery('.js-e-product-form-addtocart').find('input[name=ProductID]').val();\r\n //var currentDataStock = parseInt(jQuery('.js-juuls-cart-quantity').data('stock'));\r\n jQuery( '.js-e-product-form-addtocart' ).each( function ( index, domForm ) {\r\n var currentProductId = jQuery( domForm ).find( 'input[name=ProductID]' ).val();\r\n var currentValue = parseInt( jQuery( domForm ).find( '.js-juuls-cart-quantity' ).val() );\r\n var currentDataStock = parseInt( jQuery( domForm ).find( '.js-juuls-cart-quantity' ).data( 'stock' ) );\r\n if ( jsonData.cart ) {\r\n for ( var i = 0; i < jsonData.cart.orderlinesIds.length; i++ ) {\r\n if ( jsonData.cart.orderlinesIds[ i ] === currentProductId ) {\r\n if ( parseInt( jsonData.cart.orderlinesQuantity[ i ] ) >= currentDataStock ) {\r\n jQuery( domForm ).find( 'button' ).prop( 'disabled', true );\r\n jQuery( domForm ).find( '.js-juuls-cart-quantity' ).prop( 'disabled', true );\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n if ( currentValue > currentDataStock ) {\r\n jQuery( domForm ).find( 'button' ).prop( 'disabled', true );\r\n jQuery( domForm ).find( '.js-juuls-cart-quantity' ).prop( 'disabled', true );\r\n }\r\n }\r\n jQuery( domForm ).find( '.js-juuls-cart-quantity' ).data( 'stockminuswhatsincart', currentDataStock );\r\n //console.log(jsonData.cart.orderlinesIds[0], currentProductId)\r\n //console.log(jsonData.cart.orderlinesQuantity[0], currentDataStock)\r\n } );\r\n /*jQuery.each(jsonData.cart.orderlines, function (i, item) {\r\n if (jsonData.cart.orderlines[i].product != null) {\r\n\r\n orderlineCurrentProductId = jsonData.cart.orderlines[i].product.id;\r\n\r\n console.log(orderlineCurrentProductId, currentProductId)\r\n\r\n if (currentVariantId === undefined) {\r\n currentVariantId = '';\r\n }\r\n\r\n if (orderlineCurrentProductId === currentProductId) {\r\n orderlineCurrentProductQuantityInCart = parseInt(jsonData.cart.orderlines[i].quantity);\r\n\r\n var currentDataStockMinusWhatsInCart = currentDataStock - orderlineCurrentProductQuantityInCart;\r\n if (orderlineCurrentProductQuantityInCart >= currentDataStock) {\r\n jQuery('.js-juuls-cart-quantity').data('stockminuswhatsincart', 0)\r\n jQuery('.js-juuls-stock-in-cart').find('button').prop('disabled', true);\r\n\r\n } else {\r\n jQuery('.js-juuls-cart-quantity').data('stockminuswhatsincart', currentDataStockMinusWhatsInCart)\r\n jQuery('.js-juuls-stock-in-cart').find('button').prop('disabled', false);\r\n }\r\n }\r\n\r\n }\r\n });*/\r\n /* if (orderlineCurrentProductQuantityInCart === \"\") {\r\n jQuery('.js-juuls-cart-quantity').data('stockminuswhatsincart', currentDataStock);\r\n jQuery('.js-juuls-stock-in-cart').find('button').prop('disabled', false);\r\n }*/\r\n },\r\n updateQuantityInfo: function ( intQuantity ) {\r\n var jCartQuantity = jQuery( '.js-e-cart-quantity' );\r\n if ( jCartQuantity.length > 0 ) {\r\n if ( jQuery.isNumeric( intQuantity ) === false ) {\r\n e4.cart.ajax( {\r\n method: 'GET'\r\n }, function ( jsonData ) {\r\n e4.cart._jsonData = jsonData;\r\n e4.cart.disableAddToCartButtonIfLowOnStock( jsonData );\r\n if ( jQuery.isEmptyObject( jsonData ) === true ) {\r\n e4.cart.updateQuantityInfo( 0 );\r\n return;\r\n }\r\n if ( jQuery.isNumeric( jsonData.cart.productQuantity ) === true ) {\r\n e4.cart.updateQuantityInfo( jsonData.cart.productQuantity );\r\n }\r\n } );\r\n }\r\n else if ( intQuantity === 0 ) {\r\n jCartQuantity.empty();\r\n }\r\n else {\r\n jCartQuantity.html( intQuantity );\r\n jQuery( '.js-e-cart-quantity-inline' ).html( intQuantity );\r\n }\r\n }\r\n },\r\n updateTotalPrice: function ( strPrice ) {\r\n var jCartTotalPrice = jQuery( '.js-e-cart-total-price' );\r\n jCartTotalPrice.html(strPrice);\r\n },\r\n orderline: {\r\n bindEvents: function () {\r\n jQuery( '.js-e-cart-form' )\r\n .on( 'focus blur', '.js-e-orderline-quantity-input', e4.cart.orderline.toggleFocus )\r\n .on( 'input', '.js-e-orderline-quantity-input', e4.util.debounce( function ( event ) {\r\n if ( parseInt( event.target.value ) > parseInt( event.target.dataset.ruleMax ) ) {\r\n event.target.value = event.target.dataset.ruleMax;\r\n }\r\n e4.cart.orderline.update( event.target );\r\n }, e4.settings.debounceDelay.input * 2 ) )\r\n .on( 'input', '.js-e-orderline-comment-input', e4.util.debounce( function ( event ) {\r\n e4.cart.orderline.saveComment( event.target );\r\n }, e4.settings.debounceDelay.input * 10 ) )\r\n .on( 'input', '.js-e-orderline-comment-input', function ( event ) {\r\n e4.cart.orderline.hideCommentHelpText( event.target );\r\n } )\r\n .on( 'click', '.js-e-orderline-update-btn', e4.util.debounce( function ( event ) {\r\n event.preventDefault();\r\n e4.cart.orderline.update( event.target );\r\n }, e4.settings.debounceDelay.input * 10 ) )\r\n .on( 'click', '.js-e-orderline-delete-btn', function ( event ) {\r\n event.preventDefault();\r\n e4.cart.orderline.delete( event.target );\r\n } )\r\n .on( 'click', '.js-e-orderline-quantity-update', function ( event ) {\r\n e4.cart.orderline.updateOrderlineQuantity( event.target );\r\n } )\r\n .on('click', '.js-orderline-update-changed-quantity', (event) =>{\r\n e4.cart.orderline.setAmountAndUpdate(event.currentTarget);\r\n });\r\n },\r\n setAmountAndUpdate: (domNode) =>{\r\n var jOrderline = jQuery( domNode ).closest( '.js-e-orderline' ),\r\n amount = parseInt(domNode.dataset.quantity);\r\n jOrderline.find('.js-e-orderline-quantity-input').val(amount);\r\n if(amount > 0){\r\n e4.cart.orderline.update(domNode);\r\n } else{\r\n e4.cart.orderline.delete(domNode);\r\n }\r\n \r\n },\r\n update: function ( domNode ) {\r\n var jOrderline = jQuery( domNode ).closest( '.js-e-orderline' ),\r\n intOrderlineQuantity = parseInt( jOrderline.find( '.js-e-orderline-quantity-input' ).val() );\r\n \r\n if ( intOrderlineQuantity !== 0 ) {\r\n var jForm = jOrderline.closest( '.js-e-cart-form' ),\r\n jCart = jForm.closest( '.js-e-cart' ),\r\n intOrderlineQuantityOriginal = parseInt( jOrderline.data( 'product-quantity' ) );\r\n if ( intOrderlineQuantity > intOrderlineQuantityOriginal ) {\r\n jCart.trigger( e4.cart.event.orderlineincrease );\r\n }\r\n else if ( intOrderlineQuantity < intOrderlineQuantityOriginal ) {\r\n jCart.trigger( e4.cart.event.orderlinedecrease );\r\n }\r\n jForm.find( '.js-e-cart-form-cartcmd' ).val( 'updateorderlines' );\r\n e4.cart.ajax( {\r\n data: jForm.serialize()\r\n }, function ( jsonData ) {\r\n e4.cart.updateContent( jsonData );\r\n e4.cart.orderline.setFocus( jOrderline.attr( 'id' ) );\r\n } );\r\n }\r\n },\r\n delete: function ( domNode ) {\r\n var jCart = jQuery( '.js-e-cart' ),\r\n jOrderline = jQuery( domNode ).closest( '.js-e-orderline' ),\r\n objOrderlineData = jOrderline.data();\r\n jCart.trigger( e4.cart.event.orderlinedelete );\r\n e4.cart.ajax( {\r\n data: {\r\n key: jOrderline.attr( 'id' ),\r\n CartCmd: 'delorderline',\r\n Redirect: false\r\n }\r\n }, function ( jsonData ) {\r\n e4.cart.updateContent( jsonData );\r\n console.log( objOrderlineData.productCategory, 'spiderman')\r\n jCart.trigger( e4.cart.event.orderlinedeleted, {\r\n currencyCode: jsonData.cart.currencyCode,\r\n name: objOrderlineData.productName,\r\n number: objOrderlineData.productNumber,\r\n price: objOrderlineData.productPrice,\r\n category: objOrderlineData.productCategory,\r\n quantity: objOrderlineData.productQuantity\r\n } );\r\n } );\r\n },\r\n updateOrderlineQuantity: function ( domElm ) {\r\n var jOrderline = jQuery( domElm ).closest( '.js-e-orderline' ),\r\n jQuantityInput = jOrderline.find( '.js-e-orderline-quantity-input' ),\r\n intPrevValue = parseInt( jQuantityInput.val() ),\r\n intNewValue = 0;\r\n if ( jQuery( domElm ).data( 'update' ) === 'increase' ) {\r\n intNewValue = ( intPrevValue + 1 );\r\n }\r\n else {\r\n intNewValue = ( intPrevValue - 1 );\r\n if ( intNewValue === 1 ) {\r\n domElm.disabled = true;\r\n }\r\n else {\r\n domElm.disabled = false;\r\n }\r\n }\r\n if ( intNewValue > parseInt( jQuantityInput.data( 'ruleMax' ) ) ) {\r\n jQuantityInput.val( jQuantityInput.data( 'ruleMax' ) );\r\n }\r\n else {\r\n jQuantityInput.val( intNewValue );\r\n }\r\n e4.cart.orderline.update( domElm );\r\n },\r\n saveComment: function ( domInput ) {\r\n e4.cart.ajax( {\r\n data: [\r\n domInput.name,\r\n domInput.value\r\n ].join( '=' ),\r\n beforeSend: jQuery.noop\r\n }, function () {\r\n e4.cart.orderline.showCommentHelpText( domInput );\r\n } );\r\n },\r\n showCommentHelpText: function ( domInput ) {\r\n jQuery( domInput ).closest( '.form-group' ).find( '.js-e-orderline-comment-help-text' ).prop( 'hidden', false );\r\n },\r\n hideCommentHelpText: function ( domInput ) {\r\n jQuery( domInput ).closest( '.form-group' ).find( '.js-e-orderline-comment-help-text' ).prop( 'hidden', true );\r\n },\r\n setFocus: function ( strId ) {\r\n if ( strId !== '' ) {\r\n var jOrderline = jQuery( '.js-e-orderline' ).filter( '#' + strId );\r\n if ( jOrderline.length === 1 ) {\r\n jOrderline.find( '.js-e-orderline-quantity-input' ).focus();\r\n }\r\n }\r\n },\r\n getIdByProduct: function ( objProduct ) {\r\n var strReturnValue = '',\r\n jOrderline = jQuery( '.js-e-orderline' ).filter( '[data-product-id=\"' + objProduct.id + '\"][data-product-variant-id=\"' + objProduct.variantId + '\"]' );\r\n if ( jOrderline.length === 1 ) {\r\n strReturnValue = jOrderline.attr( 'id' );\r\n }\r\n return strReturnValue;\r\n },\r\n toggleFocus: function ( event ) {\r\n var jOrderline = jQuery( event.target ).closest( '.js-e-orderline' );\r\n if ( event.type === 'focusin' ) {\r\n jQuery( event.target ).select();\r\n jOrderline.addClass( 'has-focus' );\r\n }\r\n else {\r\n jOrderline.removeClass( 'has-focus' );\r\n }\r\n }\r\n },\r\n msg: {\r\n timeout: null,\r\n init: function () {\r\n if ( jQuery( '#js-e-cart-msg' ).length === 1 ) {\r\n // if ( jQuery( window ).width() > 1349 ) {\r\n e4.cart.msg.bindEvents();\r\n // }\r\n }\r\n },\r\n bindEvents: function () {\r\n var jBody = jQuery( 'body' );\r\n jQuery( '#js-e-cart-msg' ).on( 'show.bs.modal', function () {\r\n jBody.addClass( e4.settings.modal.bodyNoAdjustmentClass );\r\n } ).on( 'hidden.bs.modal', function () {\r\n jBody.removeClass( e4.settings.modal.bodyNoAdjustmentClass );\r\n } ).on( 'click', function ( event ) {\r\n if ( jQuery( event.target ).is( '#js-e-cart-msg' ) === true ) {\r\n e4.cart.msg.hide();\r\n }\r\n } ).find( '.modal-dialog' ).on( 'mouseenter', e4.cart.msg.clearTimeout ).on( 'mouseleave', e4.cart.msg.setTimeout );\r\n jQuery( document ).on( e4.cart.event.productadded, function ( event, jsonData ) {\r\n if ( jQuery( jsonData.domAddedForm ).closest( '.js-e-search-form-inline' ).length === 0 ) {\r\n e4.cart.msg.show( jsonData );\r\n }\r\n } );\r\n jQuery( '.js-e-nav-item-cart' ).on( 'click', function ( event ) {\r\n event.preventDefault();\r\n if ( jQuery( window ).width() > 1349 ) {\r\n e4.cart.msg.setPosition();\r\n jQuery( '#js-e-cart-msg' ).modal( 'toggle' );\r\n }\r\n else {\r\n location.href = jQuery( event.currentTarget ).find( 'a' ).first().attr( 'href' );\r\n }\r\n } );\r\n },\r\n show: function ( jsonData ) {\r\n var jCartMsg = jQuery( '#js-e-cart-msg' );\r\n jCartMsg.find( '.js-e-cart-msg-content' ).html( jsonData.cart.lastAdded );\r\n e4.cart.msg.clearTimeout();\r\n e4.cart.msg.setPosition();\r\n jCartMsg.modal( 'show' );\r\n e4.cart.msg.setTimeout();\r\n },\r\n hide: function () {\r\n e4.cart.msg.clearTimeout();\r\n jQuery( '#js-e-cart-msg' ).modal( 'hide' );\r\n },\r\n setPosition: function ( objPosition ) {\r\n var jCartMsgDialog = jQuery( '#js-e-cart-msg' ).find( '.modal-dialog' ),\r\n jHeader = jQuery( '.js-e-header' ),\r\n jNavItemCart = jHeader.find( '.js-e-nav' ).find( '.js-e-nav-item-cart' ).filter( ':visible' ).first(),\r\n objCartMsgPosition = objPosition || {},\r\n objCartMsgReferencePosition = {};\r\n if ( jCartMsgDialog.length === 1 ) {\r\n if ( jQuery.isEmptyObject( objCartMsgPosition ) === true ) {\r\n if ( jNavItemCart.length === 1 ) {\r\n objCartMsgReferencePosition = jNavItemCart.get( 0 ).getBoundingClientRect();\r\n objCartMsgPosition = {\r\n top: jHeader.hasClass( 'is-hidden' ) === true ? '' : Math.floor( objCartMsgReferencePosition.bottom ),\r\n right: Math.floor( jQuery( window ).width() - objCartMsgReferencePosition.right ),\r\n left: '',\r\n maxWidth: ''\r\n };\r\n }\r\n else {\r\n objCartMsgPosition = {\r\n top: 0,\r\n right: 0,\r\n left: 0,\r\n maxWidth: '100%'\r\n };\r\n }\r\n }\r\n }\r\n jCartMsgDialog.css( objCartMsgPosition );\r\n },\r\n setTimeout: function () {\r\n e4.cart.msg.clearTimeout();\r\n e4.cart.msg.timeout = setTimeout( e4.cart.msg.hide, e4.settings.ecom.cart.msgHideDelay );\r\n },\r\n clearTimeout: function () {\r\n if ( e4.cart.msg.timeout ) {\r\n e4.cart.msg.timeout = clearTimeout( e4.cart.msg.timeout );\r\n }\r\n }\r\n }\r\n};\r\n\r\n"]}