$(document).ready(function() { var prName = []; $('.packlink a').each(function(index, value) { prName[index] = $(this).text(); }); // Устанавливает класс для упаковки среди товаров function setpack() { setTimeout(function() { $.each(prName, function(index, value) { $('div.t706__product-title a:contains(' + prName[index] + ')').closest('.t706__product').addClass('addpack'); }); }, 50); }; // Удаляет упаковку function delPack() { $('div.addpack .t706__product-del').click(); tcart__openCart(); }; // Добавить упаковку function contChecked() { var plpac = $('input[name="typepack"]:checked').parent('label').index(); delPack(); if (plpac === 0) { // Без изменений, если выбрана базовая опция } else { delPack(); if ($('.packlink a:eq(' + (plpac - 1) + ')').length) { $('.packlink a:eq(' + (plpac - 1) + ')')[0].click(); setpack(); } tcart__openCart(); }; }; // При изменении варианта доставки меняем товар $("input[name='typepack']").change(function() { contChecked(); tcart__openCart(); }); // При изменении суммы в корзине $(".t706__cartwin-prodamount").bind('DOMSubtreeModified', function() { setpack(); var itemProd = $('.t706__product').length; // Если в корзине осталась только упаковка, удаляем упаковку и закрываем корзину setTimeout(function() { if (($('.t706__product').length === 1) && ($('.t706__product').hasClass('addpack'))) { $('input[name="typepack"]:eq(0)').prop("checked", true); delPack(); tcart__closeCart(); }; }, 330); }); // Активирует нужный выбор упаковки при добавлении товара в корзину $(document).on('click', 'a[href^="#order"]:not(.packlink a), .t706__carticon-wrapper', function(e) { setTimeout(function() { if ($('.t706__cartwin').hasClass('t706__cartwin_showed')) { checkItem(); setTimeout(function() { contChecked(); }, 200); }; }, 50); }); // При отмене удаления товара $(document).on('click', '.t706__product-deleted__timer__return', function(e) { setTimeout(function() { checkItem(); }, 500); }); // При попытке удаления товара $(document).on('click', '.t706__product-del , .t706__product-minus', function(e) { let readdclass = setInterval(function() { if (document.querySelector('.t706__product-deleted')) { // Без изменений } else { setpack(); clearInterval(readdclass); }; }, 200); setTimeout(function() { clearInterval(readdclass) }, 5000); }); // При добавлении товара в корзину через плавающую корзину $(document).on('click', '.t706__product-resume-item .t706__product-title a', function(e) { setTimeout(function() { if ($('.t706__cartwin').hasClass('t706__cartwin_showed')) { checkItem(); setTimeout(function() { contChecked(); }, 200); }; }, 50); }); // Дополнительная функция для активации нужного выбора упаковки function checkItem() { setTimeout(function() { setpack(); $.each(prName, function(index, value) { if ($('div.t706__product-title a').text().indexOf(prName[index]) > -1) { $('input[name="typepack"]:eq(' + (index + 1) + ')').prop("checked", true); }; }); }, 100); }; // Первоначальная активация функции setpack setpack(); });