Boots | Rubber Waterproof Boots | Insulated Boots - TideWe (2024)

'; html += '

'; html += '

' + aa_freegift.strings.modal_headding_1 + '

'; html += '

'; html += '

'; html += '

'; html += '

'; if (aaFreeGiftProductList != '') { html += aaFreeGiftProductList; } html += '

'; html += '

' + aa_freegift.strings.button_continue + '

'; html += '

'; $('.template-cart .cart-item-list').append(html); aa_freegift.modalHeading(); observer.observe();}; aa_freegift.formatMoney = function(cents, format) { typeof cents == "string" && (cents = cents.replace(".", "")); var value = "" , placeholderRegex = /\{\{\s*(\w+)\s*\}\}/ , formatString = format || this.money_format; function defaultOption(opt, def) { return typeof opt == "undefined" ? def : opt } function formatWithDelimiters(number, precision, thousands, decimal) { if (precision = defaultOption(precision, 2), thousands = defaultOption(thousands, ","), decimal = defaultOption(decimal, "."), isNaN(number) || number == null) return 0; number = (number / 100).toFixed(precision); var parts = number.split(".") , dollars = parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + thousands) , cents2 = parts[1] ? decimal + parts[1] : ""; return dollars + cents2 } switch (formatString.match(placeholderRegex)[1]) { case "amount": value = formatWithDelimiters(cents, 2); break; case "amount_no_decimals": value = formatWithDelimiters(cents, 0); break; case "amount_with_comma_separator": value = formatWithDelimiters(cents, 2, ".", ","); break; case "amount_no_decimals_with_comma_separator": value = formatWithDelimiters(cents, 0, ".", ","); break } return formatString.replace(placeholderRegex, value)};aa_freegift.price = function(cents) { typeof cents == "string" && (cents = cents.replace(".", "")); cents = parseInt(cents / 100); return aa_freegift.formatMoney(cents);};aa_freegift.getCart = function() { var cart; $.ajax({ type: 'get', url: '/cart.json', dataType: 'json', async: false, success: function(data) { cart = data; } }); return cart;};aa_freegift.checkCartHasActivityProduct = function() { var cart = aa_freegift.getCart(); var data = cart.items; var itemInCart = false; var price = 0, result = []; for (var i = 0; i < data.length; i++) { if (aa_freegift.checkItemInCartById(cart, data[i].product_id)) { itemInCart = true; result['itemInCart'] = itemInCart; result['product_id'] = data[i].product_id; result['price'] = data[i].line_price; break; } } console.log('checkCartHasActivityProduct:'); console.log(result); return result;}; aa_freegift.cartCount = function(cart) { if (typeof cart === "undefined" || cart == '') return; return cart.item_count;}; aa_freegift.cartAmount = function(cart) { if (typeof cart === "undefined" || cart == '') return; return cart.total_price;};aa_freegift.getCartPageCollection = function() { var cart_collection = ''; $.ajax({ url: '/cart/', type: 'get', success: function(data) { if ($(data).find('#aa-freegift-cart-collection').length > 0) { cart_collection = $(data).find('#aa-freegift-cart-collection').html(); console.log(cart_collection); } } }); return cart_collection;}; aa_freegift.addCart = function(type, variant_id, qty, beforeSendCallback, successCallback, errorCallback) { if (!type || !variant_id) return; $.ajax({ url: '/cart/'+ type + '.js', type: 'post', dataType: 'json', data: { 'id': variant_id, 'quantity': qty }, beforeSend: function(data) { if ((typeof beforeSendCallback) === 'function') { beforeSendCallback(data); } }, success: function(data) { if ((typeof successCallback) === 'function') { successCallback(data); } }, error: function(data) { if ((typeof errorCallback) === 'function') { errorCallback(data); } }, });}; var addToLocalStorageArray = function (name, value) {// Get the existing datavar existing = localStorage.getItem(name);// If no existing data, create an array// Otherwise, convert the localStorage string to an arrayexisting = existing ? existing.split(',') : []; if (existing) { var duplicate = false; for (var i = 0; i < existing.length; i++) { if (existing[i] == value) { duplicate = true; } } console.log('Duplicate: ', duplicate); }// Add new data to localStorage Arrayif (!duplicate) { existing.push(value); }// Save back to localStoragelocalStorage.setItem(name, existing.toString());}; aa_freegift.saveActivityProductAdded = function() { if ($('body').attr('data-aafreegiftelementshow') != 1) { return; } var form = $('form.product-purchase-form'), selector = form.find('.original-selector'); var product_id = $(form).find('input[name="product-id"]').val(); var variant_id = selector.find(':selected').val(); console.log('Variant id added: ', variant_id); addToLocalStorageArray('aaFreeGiftActivityProductAdded', variant_id);}; aa_freegift.getActivityProductAddedPriceTotal = function() { var storage = localStorage.getItem('aaFreeGiftActivityProductAdded'); storage = storage ? storage.split(',') : []; console.log('localStorage aaFreeGiftActivityProductAdded: ', storage); var total = 0; if (storage) { var cart = aa_freegift.getCart(), cartResult = []; for (var i = 0; i < cart.items.length; i++) { cartResult.push(cart.items[i].id); for (var n = 0; n < storage.length; n++) { if (cart.items[i].id == storage[n]) { total += cart.items[i].line_price; } } } } console.log('cartResult: ', cartResult); console.log('getActivityProductAddedPriceTotal: ', total); return total;}; aa_freegift.checkItemInCartByVariant = function(cart, variant_id) { if (!variant_id) return; var itemInCart = false; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].id == variant_id) { itemInCart = true; break; } } return itemInCart;};aa_freegift.getCurrentGiftVariantId = function(cart, product_list) { var result = [], lists = product_list, product_id, variant_id; var aa_freegift_storage; if (typeof localStorage.aaFreeGiftAddedData !== "undefined") { aa_freegift_storage = JSON.parse(localStorage.aaFreeGiftAddedData); var product_id = aa_freegift_storage.product_id, variant_id = aa_freegift_storage.variant_id; } if (!variant_id) return; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].id == variant_id) { result['inCart'] = true; result['product_id'] = parseInt(product_id); result['variant_id'] = parseInt(variant_id); break; } } console.log(result); return result;};aa_freegift.checkItemInCartByStorage = function(cart) { var itemInCart = false; var aa_freegift_storage; if (typeof localStorage.aaFreeGiftAddedData !== "undefined") { aa_freegift_storage = JSON.parse(localStorage.aaFreeGiftAddedData); var product_id = aa_freegift_storage.product_id, variant_id = aa_freegift_storage.variant_id; } if (!variant_id) return; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].id == variant_id) { itemInCart = true; break; } } return itemInCart;};aa_freegift.checkItemInCartWithProductList = function(cart, product_id) { var itemInCart = false; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].id == variant_id) { itemInCart = true; break; } } return itemInCart;}; aa_freegift.checkItemInCartById = function(cart, product_id) { return aa_freegift.checkItemInCartByStorage(cart);};aa_freegift.checkItemInCartByIdOld = function(cart, product_id) { if (!product_id) return; var itemInCart = false; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].product_id == product_id) { itemInCart = true; break; } } return itemInCart;}; aa_freegift.checkItemVariantInCart = function(cart) { for (var i = 0; i < cart.items.length; i++) { var id = cart.items[i].id, product_id = cart.items[i].product_id, t = $('.aa-product-bundle-product-' + product_id); t.find('.aa-variantid').val(id); }};aa_freegift.checkGiftInCartData = function(cart) { var result = [], cartItem, itemInCart = false; var giftProducts = aa_freegift.apiProducts; var product_id; var aa_freegift_storage; if (typeof localStorage.aaFreeGiftAddedData !== "undefined") { aa_freegift_storage = JSON.parse(localStorage.aaFreeGiftAddedData); var product_id = aa_freegift_storage.product_id, variant_id = aa_freegift_storage.variant_id; result["product_id"] = parseInt(product_id); result["variant_id"] = parseInt(variant_id); } for (var i = 0; i < giftProducts.length; i++) { if (giftProducts[i].product_id == product_id) { itemInCart = true; product_id = giftProducts[i].product_id; result["inCart"] = itemInCart; result["giftItem"] = giftProducts[i]; break; } else { itemInCart = false; result["inCart"] = itemInCart; } } for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].product_id == product_id) { cartItem = cart.items[i]; result["cartItem"] = cartItem; break; } } return result;};aa_freegift.checkGiftInCartBySku = function(cart) { var itemInCart = false; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].sku.indexOf("gift-") !== -1) { itemInCart = true; break; } if (cart.items[i].variant_title.indexOf("gift-") !== -1) { itemInCart = true; break; } } console.log('checkGiftInCartBySku: '+itemInCart) return itemInCart;}; aa_freegift.checkGiftInCart = function(cart) { var itemInCart = aa_freegift.checkItemInCartByStorage(cart); return itemInCart;}; aa_freegift.checkGiftInCartOld = function(cart) { var itemInCart = false; var giftProducts = aa_freegift.apiProducts; for (var i = 0; i < giftProducts.length; i++) { if (aa_freegift.checkItemInCartById(cart, giftProducts[i].product_id)) { itemInCart = true; break; } } return itemInCart;};aa_freegift.checkCartItemMatchActivity = function(cart_collection) { var api_collection = aa_freegift.apiCollectionsIds; var cart_collectionArr, api_collectionArr; var match = false; if (typeof cart_collection !== "undefined" && cart_collection.indexOf(",") !== -1) { cart_collectionArr = cart_collection.split(","); } else { cart_collectionArr = cart_collection; } if (typeof api_collection !== "undefined" && api_collection.indexOf(",") !== -1) { api_collectionArr = api_collection.split(","); } else { api_collectionArr = api_collection; } console.log('cart_collectionArr: '+cart_collectionArr); if (typeof cart_collection !== "undefined" && cart_collection != "" && typeof api_collection !== "undefined") { if (cart_collection.indexOf(",") !== -1) { if (api_collectionArr.indexOf(",") !== -1) { match = aa_freegift.hasSameItem(api_collectionArr, cart_collectionArr); console.log('a1 '+match); } else { if (cart_collectionArr.indexOf(api_collectionArr) !== -1) { match = true; console.log('a2 '+match); } else { match = false; console.log('a3 '+match); } } } else { match = api_collectionArr.indexOf(cart_collectionArr) !== -1 ? true : false; console.log('a4 '+match); } } else { match = false; console.log('a5 '+match); } console.log('checkCartItemMatchActivity: '+match); return match;};aa_freegift.message = function(cart, msg) { var result; var amount = cart.total_price; amount = aa_freegift.getActivityProductAddedPriceTotal(); switch(msg) { case 1: result = aa_freegift.strings.notice_1; result = result.replace('%num%', aa_freegift.formatMoney(aa_freegift.apiFullGive)); break; case 2: result = aa_freegift.strings.notice_2; break; case 3: result = aa_freegift.strings.notice_3; result = result.replace('%num1%', aa_freegift.formatMoney(aa_freegift.apiFullGive)); aa_freegift.cartBalance = aa_freegift.calc2num(parseInt(amount), parseInt(aa_freegift.apiFullGive)); console.log(aa_freegift.apiFullGive); if (amount > 0 && aa_freegift.cartBalance > 0) { result = result.replace('%num2%', aa_freegift.formatMoney(aa_freegift.cartBalance)); } break; case 4: result = aa_freegift.strings.notice_4; result = result.replace('%num1%', aa_freegift.formatMoney(aa_freegift.apiFullGive)); break; case 13: result = aa_freegift.strings.notice_13; result = result.replace('%num1%', aa_freegift.formatMoney(aa_freegift.apiFullGive)); break; } return result;};aa_freegift.notice = function(cart, msg, css) { var result; switch(msg) { case 1: result = '

' + aa_freegift.message(cart, 1) + '

'; break; case 2: result = '

' + aa_freegift.message(cart, 2) + '

'; break; case 3: result = '

' + aa_freegift.message(cart, 3) + '

'; break; case 4: result = '

' + aa_freegift.message(cart, 4) + '

'; break; case 13: result = '

' + aa_freegift.message(cart, 13) + '

'; break; } return result;};aa_freegift.checkRule = function(cart) { var amount = cart.total_price; amount = aa_freegift.getActivityProductAddedPriceTotal(); var result; var productItem = $('.aa-freegift-modal .aa-product-list .aa-item'), notice = $('.aa-freegift-notice'); var itemInCart = aa_freegift.checkGiftInCart(cart); var checkCartItemMatchActivity = aa_freegift.checkCartItemMatchActivity(aa_freegift.cart_collection); console.log('checkRule checkCartItemMatchActivity: '+checkCartItemMatchActivity); var aaFreeGiftNoticeForceUpdate = $('body').attr('data-aafreegift-force-update-notice'); aaFreeGiftNoticeForceUpdate = parseInt(aaFreeGiftNoticeForceUpdate); if (aaFreeGiftNoticeForceUpdate == 1) { checkCartItemMatchActivity = true; } if (amount == 0) { console.log('Can\'t add free gift 1'); result = 0; } else { if (typeof checkCartItemMatchActivity !== "undefined" && checkCartItemMatchActivity) { if (amount > aa_freegift.apiFullGive) { if (itemInCart) { console.log('free gift in cart'); result = 3; } else { console.log('Can add free gift'); result = 1; } } else { console.log('Need buy more to get free gift'); result = 2; } } else { console.log('Can\'t add free gift 2'); result = 0; } notice.addClass('rule-' + result); } productItem.addClass('rule-' + result); $('body').attr( 'class', $('body').attr('class').replace(/\baa-freegift-rule-\d+\b/g, '') ); $('body').addClass('aa-freegift-rule-' + result); $('.aa-freegift-modal').attr('data-rule', result); return result;}; aa_freegift.removeGiftWhenActivityClose = function(cart) { var variantId; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].sku.indexOf("gift-") !== -1) { variantId = cart.items[i].variant_id; break; } if (cart.items[i].variant_title.indexOf("gift-") !== -1) { variantId = cart.items[i].variant_id; break; } } console.log('gift variantId: '+variantId); if (typeof variantId === "undefined" || variantId == '') return; aa_freegift.addCart('change', variantId, 0, function(data) { console.log(variantId+' start remove'); }, function(data) { console.log(variantId+' removed'); toastr.options = { "showDuration": "5000", "timeOut": "5000", "positionClass": "toast-top-center", }; toastr["error"](aa_freegift.strings.notice_11); setTimeout(function() { window.location.reload(); }, 2000); }); };aa_freegift.cartRemoveGift = function(cart, productList, forceRemove) { var amount = cart.total_price, variantId; amount = aa_freegift.getActivityProductAddedPriceTotal(); var checkGiftInCartData = aa_freegift.checkGiftInCartData(cart); var itemInCart = checkGiftInCartData['inCart']; var needMoreAmount = false, pass = false; console.log(checkGiftInCartData); if (amount < aa_freegift.apiFullGive) { console.log('Need buy more to get free gift'); needMoreAmount = true; } if (itemInCart && needMoreAmount) { pass = true; } if (forceRemove) { pass = true; } console.log('cartRemoveGift pass:'+pass); if (!pass) return; if (typeof checkGiftInCartData['cartItem'] !== "undefined") { variantId = checkGiftInCartData['cartItem']['id']; console.log(variantId); } if (typeof variantId === "undefined" || variantId == '') return; aa_freegift.addCart('change', variantId, 0, function(data) { console.log(variantId+' start remove'); }, function(data) { localStorage.removeItem("aaFreeGiftAddedData"); console.log(variantId+' removed'); toastr.options = { "showDuration": "5000", "timeOut": "5000", "positionClass": "toast-top-center", }; if (forceRemove) { toastr["error"](aa_freegift.strings.notice_11); } else { toastr["error"](aa_freegift.strings.notice_12); } setTimeout(function() { window.location.reload(); }, 3000); }); };aa_freegift.modal_addbutton_preset = function(cart, id) { var notice = $('.aa-freegift-modal .aa-body .aa-bottom .aa-notice'), button = $('.aa-freegift-modal .aa-body .aa-bottom .aa-button'); var checkRule = aa_freegift.checkRule(cart); var itemInCart = aa_freegift.checkItemInCartById(cart, id); if (typeof checkRule !== "undefined") { button.attr('data-rule', checkRule); if (checkRule == 0) { notice.addClass('rule-02').html('Tips' + aa_freegift.message(cart, 13)); button.addClass('disabled'); } if ( checkRule == 2) { notice.addClass('rule-02').html('Tips' + aa_freegift.message(cart, 13)); button.addClass('disabled'); } if (checkRule == 1) { button.addClass('aa-button-add').text(aa_freegift.strings.button_add); } if (checkRule == 3) { if (itemInCart) { notice.addClass('rule-3'); button.addClass('incart aa-button-update').text(aa_freegift.strings.button_update);; } else { button.addClass('incart aa-button-add').text(aa_freegift.strings.button_add); } } }};aa_freegift.modal_foot_button = function(cart) { var button = $('.aa-freegift-modal .aa-foot-action .aa-button'); var buttonCartPage = $('.aa-freegift-cart .aa-foot-action .aa-button'); var checkRule = aa_freegift.checkRule(cart); if (typeof checkRule !== "undefined") { button.attr('data-rule', checkRule); buttonCartPage.attr('data-rule', checkRule); if (checkRule == 0 || checkRule == 2) { button.attr('data-link', aa_freegift.continue_shopping_link); button.text(aa_freegift.strings.button_continue); } if (checkRule == 1) { button.text(aa_freegift.strings.button_add); } if (checkRule == 3) { button.attr('data-link', '/cart'); button.text(aa_freegift.strings.button_viewcart); } }}; aa_freegift.notice_handle = function(cart, just_msg, css) { var amount = cart.total_price, result = ''; var itemInCart = aa_freegift.checkGiftInCart(cart); amount = aa_freegift.getActivityProductAddedPriceTotal(); var apiFullGive = aa_freegift.apiFullGive; console.log('notice_handle amount: ', amount); console.log('notice_handle apiFullGive: ', apiFullGive); var checkCartItemMatchActivity = aa_freegift.checkCartItemMatchActivity(aa_freegift.cart_collection); var aaFreeGiftNoticeForceUpdate = $('body').attr('data-aafreegift-force-update-notice'); aaFreeGiftNoticeForceUpdate = parseInt(aaFreeGiftNoticeForceUpdate); if (aaFreeGiftNoticeForceUpdate == 1) { checkCartItemMatchActivity = true; } if (amount == 0) { result = just_msg == 1 ? aa_freegift.message(cart, 4) : aa_freegift.notice(cart, 4, css); } else { if (checkCartItemMatchActivity) { if (amount > apiFullGive) { if (itemInCart) { result = just_msg == 1 ? aa_freegift.message(cart, 2) : aa_freegift.notice(cart, 2, css); } else { result = just_msg == 1 ? aa_freegift.message(cart, 1) : aa_freegift.notice(cart, 1, css); } } else { result = just_msg == 1 ? aa_freegift.message(cart, 3) : aa_freegift.notice(cart, 3, css); } } else { result = just_msg == 1 ? aa_freegift.message(cart, 4) : aa_freegift.notice(cart, 4, css); } } console.log('notice_handle result: ', result); return result;};aa_freegift.notice_render = function(show, cart) { if (!show) return; var target_product = $('.product-detail .detail .price-container'), target_collection = $('.template-collection main#content'), target_modal = $('.aa-freegift-modal .aa-body .aa-notice'), target_cart = $('.aa-freegift-cart .aa-head .aa-notice'); var css = ''; if (target_collection.length > 0) { css = ''; } var notice = aa_freegift.notice_handle(cart, 0, css), notice_elem = '.aa-freegift-notice'; if (typeof notice === 'undefined' || notice == '') return; var checkCartItemMatchActivity = aa_freegift.checkCartItemMatchActivity(aa_freegift.cart_collection); if ($('body').attr('data-aafreegiftelementshow') == 0) { $('.aa-freegift-notice').hide(); } /* Product */ if (target_product.length > 0) { target_product.parent().find(notice_elem).remove(); target_product.after(notice); } /* Collection */ if (target_collection.length > 0) { target_collection.parent().find(notice_elem).remove(); $(notice).insertBefore(target_collection); } /* Modal */ if (target_modal.length > 0) { target_modal.find(notice_elem).remove(); target_modal.append(notice); } /* Cart */ if (target_cart.length > 0) { target_cart.find(notice_elem).remove(); target_cart.append(notice); } }; aa_freegift.modalHeading = function() { var selectModeHeading = aa_freegift.strings.modal_headding_2; if ($(window).width() < 750) { selectModeHeading = aa_freegift.strings.modal_headding_3; } var heading = $('body').hasClass('aa-freegift-modal-product-detail-active') ? selectModeHeading : aa_freegift.strings.modal_headding_1; $('.aa-freegift-modal .aa-head .aa-heading').text(heading);};aa_freegift.checkOptionsSelected = function() { var pass = false; $('.aa-freegift-modal .aa-product-detail .aa-options-item').each(function(index, obj) { if ($(obj).find('.aa-title.active').length > 0) { pass = true; } else { pass = false; } }); console.log('checkOptionsSelected:'+pass); return pass;};aa_freegift.checkoutLastCheck = function(cart) { var result; var form = $('form#cartform'), buttonsWrap = form.find('.checkout-buttons'), systemCheckoutButton = buttonsWrap.find('button[type="submit"]'); var lastCheckButton = '

Check out

'; if (systemCheckoutButton.length > 0) { if ($('.aa-freegift-checkoutLastCheck').length == 0) { buttonsWrap.prepend(lastCheckButton); systemCheckoutButton.hide(); } }};aa_freegift.hasSameItem = function(arr1, arr2) { return arr1.some(item => arr2.includes(item)); };aa_freegift.calc2num = function (num1, num2) { return Math.abs(parseInt(num1) - parseInt(num2));};aa_freegift.checkObject = function(arr) { const result = Array.isArray(arr); if(result) { console.log(`[${arr}] is an array.`); } else { console.log(`${arr} is not an array.`); }};aa_freegift.pageLoader = function(type) { var loader = '

'; if (type == 'show') { if ($('.aa-pageloader').length == 0) { $('body').append(loader); } } else { $('.aa-pageloader').remove(); }};aa_freegift.closeModal = function(aaFreeGiftElementShow) { $('html,body').removeClass('aa-freegift-modal-active aa-freegift-modal-product-detail-active'); $('.aa-freegift-modal .aa-body .aa-product-detail').html(''); var scrollTop = $('body').attr('data-aafreegift-scrolltop'); if ($(window).width() < 750) { $(document).scrollTop(scrollTop); } var cart = aa_freegift.getCart(); aa_freegift.modalHeading(); aa_freegift.notice_render(aaFreeGiftElementShow, cart); var productList = aa_freegift.getProductList(cart); $('.aa-freegift-modal .aa-body .aa-product-list').html(productList); aa_freegift.checkRule(cart); };

Boots | Rubber Waterproof Boots | Insulated Boots - TideWe (2024)
Top Articles
Latest Posts
Article information

Author: Domingo Moore

Last Updated:

Views: 6150

Rating: 4.2 / 5 (53 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Domingo Moore

Birthday: 1997-05-20

Address: 6485 Kohler Route, Antonioton, VT 77375-0299

Phone: +3213869077934

Job: Sales Analyst

Hobby: Kayaking, Roller skating, Cabaret, Rugby, Homebrewing, Creative writing, amateur radio

Introduction: My name is Domingo Moore, I am a attractive, gorgeous, funny, jolly, spotless, nice, fantastic person who loves writing and wants to share my knowledge and understanding with you.