1jQuery(document).ready(function(){jQuery(document).on('click','body.woocommerce-cart [name=update_cart]',function(){pluginGtmServerSide.changeCartQty()});jQuery(document).on('keypress','body.woocommerce-cart .woocommerce-cart-form input[type=number]',function(){pluginGtmServerSide.changeCartQty()});jQuery(document).on('click','.add_to_cart_button:not(.product_type_variable, .product_type_grouped, .single_add_to_cart_button)',function(e){var el=e.target;if(!el.dataset){return} 2if(!el.dataset.gtm_item_id){return} 3let gtmData=pluginGtmServerSide.getGtmItemData(el.dataset);let customData=pluginGtmServerSide.getCustomItemData(el.dataset);pluginGtmServerSide.pushAddToCart(gtmData);pluginGtmServerSide.pushSelectItem(gtmData,customData)});jQuery(document).on('click','.wc-block-grid__product .add_to_cart_button:not(.product_type_variable, .product_type_grouped, .single_add_to_cart_button)',function(e){var $el=jQuery(this).closest('.wc-block-grid__product');if(!$el.length){return} 4if(!$el.data('gtm_item_id')){return} 5let gtmData=pluginGtmServerSide.getGtmItemData($el.data());let customData=pluginGtmServerSide.getCustomItemData($el.data());pluginGtmServerSide.pushAddToCart(gtmData);pluginGtmServerSide.pushSelectItem(gtmData,customData)});jQuery(document).on('click','.single_add_to_cart_button:not(.disabled)',function(e){var $elForm=jQuery(this).closest('form.cart');if(!$elForm.length){return!0} 6if($elForm.find('[name=variation_id]').length>0){pluginGtmServerSide.pushVariationProduct($elForm);return} 7if($elForm.hasClass('grouped_form')){pluginGtmServerSide.pushGroupProduct($elForm);return} 8pluginGtmServerSide.pushSimpleProduct($elForm)});jQuery(document).on('removed_from_cart',function(e,fragments,cart_hash,$thisbutton){if(!$thisbutton.length){return} 9if(!$thisbutton.data('gtm_item_id')){return} 10pluginGtmServerSide.removeFromCart(pluginGtmServerSide.getGtmItemData($thisbutton.data()))});jQuery(document).on('click','.woocommerce-cart-form .product-remove > a',function(e){var $el=jQuery(e.currentTarget);if(!$el.data('gtm_item_id')){return} 11pluginGtmServerSide.removeFromCart(pluginGtmServerSide.getGtmItemData($el.data()))})});var pluginGtmServerSide={pushSimpleProduct:function($elForm){var item=this.convertInputsToObject($elForm.find('[name^=gtm_]'));item=this.getGtmItemData(item);var $elQty=$elForm.find('[name=quantity]');if($elQty.length){item.quantity=$elQty.val()} 12this.pushAddToCart(item)},pushVariationProduct:function($elForm){var item=this.convertInputsToObject($elForm.find('[name^=gtm_]'));item=this.getGtmItemData(item);var $elQty=$elForm.find('[name=quantity]');if($elQty.length){item.quantity=$elQty.val()} 13var variations=[];$elForm.find('[name^=attribute_] option:selected').each(function(){variations.push(jQuery(this).text())});if(variations.length){item.item_variant=variations.join(',')} 14this.pushAddToCart(item)},pushGroupProduct:function($elForm){var items=[];$elForm.find('[name^=quantity\\[]').each(function(){if(!jQuery(this).val()){return} 15var $elTd=jQuery(this).closest('td');if(!$elTd.length){return} 16var item={quantity:jQuery(this).val(),};$elTd.find('[name^=gtm_]').each(function(){item[jQuery(this).data('name')]=jQuery(this).val()});items.push(item)});this.pushAddToCart(items)},removeFromCart:function(item){item.quantity=item.quantity||1;var eventData={'event':this.getDataLayerEventName('remove_from_cart'),'ecommerce':{'currency':varGtmServerSide.currency,'items':[item,],},};if(varGtmServerSide.user_data){eventData.user_data={};for(var key in varGtmServerSide.user_data){eventData.user_data[key]=varGtmServerSide.user_data[key]}} 17if('yes'===varGtmServerSide.is_custom_event_name){this._pushWithStateCartData(eventData);return} 18dataLayer.push({ecommerce:null});dataLayer.push(eventData)},changeCartQty:function(){var $this=this;document.querySelectorAll('.product-quantity input.qty').forEach(function(el){var originalValue=el.defaultValue;var currentValue=parseInt(el.value);if(isNaN(currentValue)){currentValue=originalValue} 19if(originalValue!=currentValue){var elCartItem=el.closest('.cart_item');var elDataset=elCartItem&&elCartItem.querySelector('.remove');if(!elDataset){return} 20if(originalValue<currentValue){var item=$this.getGtmItemData(elDataset.dataset);item.quantity=currentValue-originalValue;$this.pushAddToCart(item)}}})},getGtmItemData:function(items){return this._getItemData(items,'gtm_')},getCustomItemData:function(items){return this._getItemData(items,'custom_gtm_')},_getItemData:function(items,prefix){var result={};for(var key in items){if(0!==key.indexOf(prefix)){continue} 21var itemKey=key.replace(prefix,'') 22result[itemKey]=items[key]} 23return result},convertInputsToObject($els){var data={};if(!$els.length){return data} 24$els.each(function(){data[jQuery(this).attr('name')]=jQuery(this).val()});return data}
24,filterItemPrice:function(item){if(typeof item.price=='string'){item.price=parseFloat(item.price);if(isNaN(item.price)){item.price=0}}else if(typeof item.price!='number'){item.price=0} 25item.price=item.price.toFixed(2);return item},pushAddToCart:function(item){this._pushToDataLayer(item,'add_to_cart','product')},pushSelectItem:function(item,custom){if(custom?.pagetype){this._pushToDataLayer(item,'select_item',custom.pagetype,{collection_id:custom?.collection_id,item_list_name:custom?.item_list_name,})}},_pushToDataLayer:function(originalItem,event,pagetype,customEcommerce={}){var originalItems=Array.isArray(originalItem)?originalItem:[originalItem];var items=[];var value=0;var index=1;for(var original of originalItems){var item_loop=Object.assign({},original);item_loop.index=index++;item_loop.quantity=item_loop.quantity?parseInt(item_loop.quantity,10):1;item_loop=this.filterItemPrice(item_loop);value=parseFloat(value+(item_loop.price*item_loop.quantity));items.push(item_loop)} 26if(!items.length){return} 27let eventDataEcommerce={'currency':varGtmServerSide.currency,'value':value.toFixed(2),'items':items,} 28var eventData={'event':this.getDataLayerEventName(event),'ecomm_pagetype':pagetype,'ecommerce':Object.assign({},eventDataEcommerce,customEcommerce),};if(varGtmServerSide.user_data){eventData.user_data={};for(var key in varGtmServerSide.user_data){eventData.user_data[key]=varGtmServerSide.user_data[key]}} 29if('add_to_cart'===event&&'yes'===varGtmServerSide.is_custom_event_name){this._pushWithStateCartData(eventData);return} 30dataLayer.push({ecommerce:null});dataLayer.push(eventData)},getDataLayerEventName:function(event_name){if('yes'===varGtmServerSide.is_custom_event_name){return event_name+varGtmServerSide.DATA_LAYER_CUSTOM_EVENT_NAME} 31return event_name},_sendStateCartDataAjax:function(eventData){jQuery.post(varGtmServerSide.ajax,{action:'gtm_server_side_state_cart_data',security:varGtmServerSide.security,},function(response){if(!response||!response.success){dataLayer.push({ecommerce:null});dataLayer.push(eventData);return!1} 32eventData.cart_state=response.data;dataLayer.push({ecommerce:null});dataLayer.push(eventData)})},_pushWithStateCartData:function(eventData){let self=this;let fired=!1;var handler=function(event,xhr,settings){if(fired){return} 33if(!settings||!settings.url){return} 34let url=settings.url;if(url.indexOf('wc-ajax=add_to_cart')!==-1||url.indexOf('wc-ajax=remove_from_cart')!==-1){fired=!0;jQuery(document).off('ajaxComplete',handler);self._sendStateCartDataAjax(eventData)}};jQuery(document).on('ajaxComplete',handler);setTimeout(function(){if(fired){return} 35jQuery(document).off('ajaxComplete',handler);self._sendStateCartDataAjax(eventData)},1500)}}
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.