1"use strict"; 2function updateCartQuantityListCartData() 3{ 4 $('.update-cart-quantity-list-cart-data').off('click').on('click', function () { 5 6 let minOrder = $(this).data('min-order'); 7 let cart = $(this).data('cart'); 8 let value = $(this).data('value'); 9 let action = $(this).data('action'); 10 updateCartQuantityList(minOrder, cart, value, action); 11 }); 12 $('.update-cart-quantity-list-cart-data-input').on('change', function () { 13 let minOrder = $(this).data('min-order'); 14 let cart = $(this).data('cart'); 15 let value = $(this).data('value'); 16 let action = $(this).data('action'); 17 updateCartQuantityList(minOrder, cart, value, action); 18 }); 19} 20 21updateCartQuantityListCartData(); 22 23function updateCartQuantityListMobileCartData() 24{ 25 $('.update-cart-quantity-list-mobile-cart-data').on('click change', function () { 26 let minOrder = $(this).data('min-order'); 27 let cart = $(this).data('cart'); 28 let value = $(this).data('value'); 29 let action = $(this).data('action'); 30 updateCartQuantityListMobile(minOrder, cart, value, action); 31 }); 32 $('.update-cart-quantity-list-mobile-cart-data-input').on('change', function () { 33 let minOrder = $(this).data('min-order'); 34 let cart = $(this).data('cart'); 35 let value = $(this).data('value'); 36 let action = $(this).data('action'); 37 updateCartQuantityListMobile(minOrder, cart, value, action); 38 }); 39} 40updateCartQuantityListMobileCartData(); 41 42function updateCartQuantityList(minimum_order_qty, key, incr, e) { 43 let quantity =parseInt($("#cartQuantityWeb" + key).val())+parseInt(incr); 44 let ex_quantity = $("#cartQuantityWeb" + key); 45 updateCartCommon(minimum_order_qty, key, e, quantity, ex_quantity); 46} 47 48function updateCartQuantityListMobile(minimum_order_qty, key, incr, e) { 49 let quantity = parseInt($("#cartQuantityMobile" + key).val())+parseInt(incr); 50 let ex_quantity = $("#cartQuantityMobile" + key); 51 updateCartCommon(minimum_order_qty, key, e, quantity, ex_quantity); 52} 53function updateCartCommon(minimum_order_qty, key, e, quantity, ex_quantity) { 54 if (ex_quantity.val() > ex_quantity.data('current-stock') && e == 'minus') { 55 removeProductFromCartList(key) 56 return false; 57 } 58 59 if (quantity < minimum_order_qty && e !== 'delete') { 60 if (e === 'plus' && quantity + 1 <= minimum_order_qty) { 61 quantity = quantity + 1; 62 if (quantity < minimum_order_qty) { 63 $(".cartQuantity" + key).val(quantity); 64 return false; 65 } 66 } else { 67 toastr.error($('.minimum_order_quantity_msg').data('text') + ' ' + minimum_order_qty); 68 $(".cartQuantity" + key).val(minimum_order_qty); 69 location.reload(); 70 return false; 71 } 72 } 73 74 if (parseInt(ex_quantity.val()) === parseInt(ex_quantity.data('min')) && e === 'delete') { 75 removeProductFromCartList(key) 76 }else{ 77 let updateQuantityBasicUrl = $('#update-quantity-basic-url').data('url'); 78 $.post(updateQuantityBasicUrl, { 79 _token: $('meta[name="_token"]').attr('content'), 80 key, 81 quantity 82 }, function (response) { 83 if (response.status === 0) { 84 toastr.error(response.message, { 85 CloseButton: true, 86 ProgressBar: true 87 }); 88 $(".cartQuantity" + key).val(response['qty']); 89 } else { 90 if (response['qty'] === ex_quantity.data('min')) { 91 ex_quantity.parent().find('.quantity__minus').html('<i class="bi bi-trash3-fill text-danger fs-10"></i>') 92 } else { 93 ex_quantity.parent().find('.quantity__minus').html('<i class="bi bi-dash"></i>') 94 } 95 updateNavCart(); 96 $('#cart-summary').empty().html(response); 97 } 98 initTooltip(); 99 proceedToNextAction(); 100 setShippingIdFunction() 101 updateCartQuantityListCartData(); 102 updateCartQuantityListMobileCartData(); 103 renderCouponCodeApply() 104 multipleCheckBoxFunctionsInit() 105 }); 106 } 107} 108 109function removeProductFromCartList(key) { 110 let remove_from_cart_url = $('#remove_from_cart_url').data('url'); 111 $.post(remove_from_cart_url, { 112 _token: $('meta[name="_token"]').attr('content'), 113 key: key 114 }, 115 function (response) { 116 updateNavCart(); 117 toastr.info(response.message, { 118 CloseButton: true, 119 ProgressBar: true 120 }); 121 let segment_array = window.location.pathname.split('/'); 122 let segment = segment_array[segment_array.length - 1]; 123 if (segment === 'checkout-payment' || segment === 'checkout-details') { 124 location.reload(); 125 } 126 $('#cart-summary').empty().html(response.data); 127 initTooltip(); 128 proceedToNextAction(); 129 updateCartQuantityListCartData(); 130 setShippingIdFunction(); 131 updateCartQuantityListMobileCartData(); 132 renderCouponCodeApply() 133 multipleCheckBoxFunctionsInit() 134 } 135 ); 136} 137 138function setShippingIdFunction(){ 139 140 $('.set-shipping-onchange').on('change', function(){ 141 let Id = $(this).val(); 142 setShippingId(Id, 'all_cart_group'); 143 }) 144 $('.set-shipping-id').on('click', function(){ 145 let Id = $(this).data('id'); 146 let cartGroupId = $(this).data('cart-group'); 147 setShippingId(Id, cartGroupId); 148 }) 149 function setShippingId(Id, cartGroupId) { 150 $.get({ 151 url: $('#set-shipping-url').data('url'), 152 dataType: 'json', 153 data: { 154 id: Id, 155 cart_group_id: cartGroupId 156 }, 157 beforeSend: function () { 158 $('#loading').addClass('d-grid'); 159 }, 160 success: function () { 161 location.reload(); 162 }, 163 complete: function () { 164 $('#loading').removeClass('d-grid'); 165 }, 166 }); 167 } 168} 169setShippingIdFunction(); 170 171
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.