<!--Код фильтрации приёмщика в корзине  mo-ti.ru-->
<script>
t_onReady(function() {
    setTimeout(function() {
        t_onFuncLoad('tcart__init', function() {

            console.log('=== [КОРЗИНА] Скрипт подписки запущен ===');

            var SUBSCRIPTION_FIELD_NAME = "подписка";
            var CART_INPUT_VALUE = "46d64d15a6dc3c5a634234923f2fd87d";

            // === Ищем всё только внутри корзины .t706 ===
            var cartContainer = document.querySelector('.t706');
            
            if (!cartContainer) {
                console.warn('[КОРЗИНА] Контейнер .t706 не найден — скрипт остановлен');
                return;
            }
            console.log('[КОРЗИНА] Контейнер .t706 найден:', cartContainer);

            var checkboxSelector = '.t-input-group[data-field-name="' + SUBSCRIPTION_FIELD_NAME + '"] input[type="checkbox"]';
            var checkbox = cartContainer.querySelector(checkboxSelector);
            
            if (!checkbox) {
                console.warn('[КОРЗИНА] Чекбокс подписки не найден в корзине. Селектор:', checkboxSelector);
                return;
            }
            console.log('[КОРЗИНА] Чекбокс подписки найден:', checkbox);
            console.log('[КОРЗИНА] Начальное состояние чекбокса — checked:', checkbox.checked);

            var cartInputSelector = 'input[value="' + CART_INPUT_VALUE + '"]';
            var cartInput = cartContainer.querySelector(cartInputSelector);
            var savedInput = null;
            
            if (cartInput) {
                savedInput = cartInput.cloneNode(true);
                cartInput.remove();
                console.log('[КОРЗИНА] Скрытый инпут найден, склонирован и удалён из DOM. Value:', CART_INPUT_VALUE);
            } else {
                console.warn('[КОРЗИНА] Скрытый инпут не найден в корзине! Селектор:', cartInputSelector);
            }

            function updateCartField() {
                console.log('--- [КОРЗИНА] updateCartField() вызван ---');
                console.log('[КОРЗИНА] Состояние чекбокса при вызове — checked:', checkbox.checked);

                // Ищем форму ТОЛЬКО внутри корзины
                var cartForm = cartContainer.querySelector('form');
                
                if (!cartForm) {
                    console.warn('[КОРЗИНА] Форма не найдена внутри .t706');
                    return;
                }
                console.log('[КОРЗИНА] Форма найдена внутри .t706:', cartForm);

                if (!savedInput) {
                    console.warn('[КОРЗИНА] savedInput отсутствует — нечего вставлять');
                    return;
                }

                var existingInput = cartForm.querySelector(cartInputSelector);
                console.log('[КОРЗИНА] Скрытый инпут уже в форме?', existingInput ? 'ДА' : 'НЕТ');
                
                if (checkbox.checked) {
                    console.log('[КОРЗИНА] Чекбокс ВКЛЮЧЕН → добавляем инпут в форму');

                    if (!existingInput) {
                        cartForm.insertBefore(savedInput.cloneNode(true), cartForm.firstChild);
                        console.log('[КОРЗИНА] Инпут добавлен в форму (в начало)');
                    } else {
                        console.log('[КОРЗИНА] Инпут уже есть в форме, пропускаем');
                    }
                } else {
                    console.log('[КОРЗИНА] Чекбокс ВЫКЛЮЧЕН → удаляем инпут из формы');

                    if (existingInput) {
                        existingInput.remove();
                        console.log('[КОРЗИНА] Инпут удалён из формы');
                    } else {
                        console.log('[КОРЗИНА] Инпута нет в форме, нечего удалять');
                    }
                }

                // Финальная проверка — что реально в форме
                var finalCheck = cartForm.querySelector(cartInputSelector);
                console.log('[КОРЗИНА] Результат: инпут в форме?', finalCheck ? 'ДА' : 'НЕТ');
            }

            checkbox.addEventListener('change', function() {
                console.log('>>> [КОРЗИНА] Пользователь кликнул чекбокс. Новое состояние:', this.checked);
                updateCartField();
            });

            console.log('[КОРЗИНА] Инициализация завершена, запускаем первичную проверку...');
            updateCartField();

        });
    }, 200);    
});    
</script>
Studio Headphones
SKU: 700.954.29
10
₽
When we first checked out our new headphones, we noticed the box said “improved bass”. We had to wonder if this was marketing jargon or the real thing? But it only took a moment to realize that bass was not kidding.
Made on
Tilda