<!--Код фильтрации приёмщика в корзине 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>