//первая группа //вторая группа //первая группа //вторая группа //первая группа //вторая группа //первая группа //вторая группа //Здесь укажите id категории ВСЕ, которая в каталоге тильды идет по умолчанию и её нельзя удалить //далее ничего не трогаем let isCartOpen = false; // Флаг состояния корзины //ЗАПУСКАЕМ ФУНКЦИЮ ПРОВЕРКИ ОТКРЫТИЯ КОРЗИНЫ //ищем кнопку активации промокода //запускаем поиска промокода //запускаем функцию подключения к каталогу //выводим уведомление о том что промокод не применим // Блокируем тильдовскую активацию промокода, если нет ни одного подходящего товара // простое уведомление (тост) внутри корзины // стараемся вставить рядом с блоком промокода // условие запрета (промокод "наш", но подходящих товаров нет) // перехват клика по кнопке "Применить" (в т.ч. когда корзина перерисовывается) // важно: перед проверкой обновляем пересечения по текущему вводу // (чтобы не зависеть от таймера) // если введён наш промокод — пересчитаем товары так же, как у тебя в checkCartState //ФУНКЦИЯ ПРОВЕРКИ ОТКРЫТИЯ КОРЗИНЫ //console.log(tcart); //запускаем функцию сравнения массивов промокодов с введенным в инпуте корзины //вывод в консоль итогов сравнений //console.log("ПРОМОКОДЫ совпало 1 группы: ",intersection_promocode1); //console.log("ПРОМОКОДЫ совпало 2 группы: ",intersection_promocode2); //если совпала 1 группа // ✅ применяем исключения для 1 группы //если совпала 2 группа // ✅ применяем исключения для 2 группы //console.log("Совпадения товары: " + intersection_tovar1); ////console.log("Сопало, следующие товары в корзине со скидкой " + intersection_tovar_sale_p); //если в корзине нет нужного товара то запретить ввод конкретного промокода //console.log("если в корзине нет нужного товара то запретить ввод конкретного промокода"); //прячем ввод промокода //проверка условия если промокод активирован и был активирован обман //деактивируем промокод //скрываем ввод промокода //если в корзине есть нужный товар и введен нужный промокод //console.log("если в корзине есть нужный товар и введен нужный промокод"); //показываем ввод промокода //определяем существует ли промокод //если активирован промокод и режим мошенника не включон //запускаем функцию получения сумму на скидку ////console.log(promo_minus_summ); //сигналим что промокод активирован ////console.log("Промокод активирован"); //активируем поиск обманщика //запускаем условие проверки типа промокода процент или рубль //console.log(Check_Promo_Type); //console.log("cумма в рублях"); //проверяем наличие скидки от количества //console.log("Существует скидка от количества товара"); //считаем величину скидки для нужного товара //console.log("Скидка для нужного товара " + Sale_Count); //console.log("Cкидка от количества товара не существует"); //ищем первоначальную стоимость КОРЗИНЫ //ищем первоначальную стоимость КОРЗИНЫ //считаем величину скидки для нужного товара //console.log("Величина скидки для нужного товара "+Sale_Count); //console.log("Корретор стоимости: " + Promo_Corrector); // присваиваем все скидки по новому рассчету //находим блок с суммой скидки для ПРОМО //обновляем переменные корзины //console.log("cумма в процентах"); //проверяем наличие скидки от количества //console.log("Существует скидка от количества товара"); //определяем скидку от количества общую //console.log(tcart.dyndiscount); //ищем первоначальную стоимость КОРЗИНЫ //Start_Summ = tcart.prodamount + tcart.delivery.price - SaleFromQty; //ищем первоначальную стоимость КОРЗИНЫ //считаем величину скидки для нужного товара //console.log("Величина скидки для нужного товара "+Sale_Count); //console.log("Корретор стоимости: " + Promo_Corrector); //console.log("Стартовая сумма "+ Start_Summ); //меняем стоимость ПРОМОКОДА со всей корзины на стоимость только одного товара // удаляем величину скидки промокода для совместимости //если скидка равна 0 //находим блок с суммой скидки для ПРОМО //console.log("Скидка на количество = 0"); //console.log(Field_Sale_Promo); //console.log("Скидка на количество > 0"); //находим блок с суммой скидки для ПРОМО //console.log(Field_Sale_Promo); //console.log("Cкидка от количества товара не существует"); //ищем первоначальную стоимость КОРЗИНЫ //ищем первоначальную стоимость КОРЗИНЫ //считаем величину скидки для нужного товара //console.log("Величина скидки для нужного товара "+Sale_Count); //console.log("Корретор стоимости: " + Promo_Corrector); //меняем стоимость ПРОМОКОДА со всей корзины на стоимость только одного товара // присваиваем все скидки по новому рассчету //обновляем переменные корзины //если в корзине есть нужный товар и введен промокод общий //console.log("если в корзине есть нужный товар и введен промокод общий"); //показываем ввод промокода //деактивируем промокод //скрываем ввод промокода //если в корзине нет нужного товара и введен промокод общий //console.log("если в корзине нет нужного товара и введен промокод общий"); //показываем ввод промокода //деактивируем промокод //скрываем ввод промокода //ФУНКЦИЯ ДЕАКТИВАЦИИ ПРОМОКОДА //ФУНКЦИЯ ПРОВЕРКИ ОБМАНА ////console.log("Режим мошенника активирован поиск"); //ФУНКЦИЯ ПРОВЕРКИ АКТИВИРОВАН ПРОМОКОД ИЛИ НЕТ //определяем существует ли промокод //если активирован промокод и режим мошенника не включон ////console.log("Промокод активирован"); //функция поиска скидочной стоимости товара среди всех товаров // Получаем список uid товаров в корзине ////console.log(resultnodelist_search_p); //если совпала 1 группа //console.log("Пересакаем 1 группу") //если 99 все товары //пересекаем массив всех товаров в корзине с нашими промокодами //console.log("В корзине следующие промо товары с учетом исключения" + intersection_tovar_price_p); //console.log(intersection_tovar_price_p); //пересекаем массив всех товаров в корзине с нашими промокодами //intersection_tovar_price_p = my_name_tovar1.filter(x => resultnodelist_search_p.includes(x)); //console.log("В корзине следующие промо товары с учтом исключения " + intersection_tovar_price_p); //console.log(intersection_tovar_price_p); //если совпала 2 группа //console.log("Пересакаем 2 группу"); //если 99 все товары //пересекаем массив всех товаров в корзине с нашими промокодами //console.log("В корзине следующие промо товары с учетом исключения " + intersection_tovar_price_p); //console.log(intersection_tovar_price_p); //пересекаем массив всех товаров в корзине с нашими промокодами //intersection_tovar_price_p = my_name_tovar2.filter(x => resultnodelist_search_p.includes(x)); //console.log("В корзине следующие промо товары с учетом исключения " + intersection_tovar_price_p); //console.log(intersection_tovar_price_p); //сбрасываем массив, чтобы его не перегружать // Обрабатываем каждый товар из пересечения //для каждого промо товара в корзине //узнаем стоимость каждого товара из общего каталога ////console.log(foundObject); ////console.log(intersection_tovar_price_one_p); //существует ли объект //if (typeof foundObject[0] === "undefined"){ //Добрались до ветки для расчета суммы от количества с вариациями ////console.log(tcart.products); //Получаем uid самой вариации //Получаем uid основного товара ////console.log(foundObject_var_uid); //Получаем ID основного товара из каталога ////console.log(main_product_for_variation); //Находим сам товара из каталога ////console.log(result_for_catalog_p.products); ////console.log(foundObject_main_var_uid); //Находим конкретную вариацию товара ////console.log(foundObject_main_var_need_uid); //Получаем сумму вариации ////console.log(promo_tovar_price); ////console.log("Ничего не делаем, так как есть сумма"); ////console.log("Добрались до ветки для расчета суммы от количества без вариаций"); //для каждога массива товаром у которых цена без скидки, считаем его с учетом количства ////console.log(foundObject_qty_p); //делаем сумму равной нулю //считаем общую сумму //функция проверки пересечения и разности массивов А и Б а также поиска товаров // Массив А - my_name_tovar1 // Массив Б - my_name_tovar2 ////console.log(resultnodelist); ////console.log(resultnodelist.length); //если вместо id товаров стоит 99, это все товары // 99 = все товары, значит берём все uid из корзины (массив!) //если это категория для 1 группы //console.log("Проверяем товары в корзине для первой группы категории"); //console.log(a); //console.log(tcart.products); // Преобразуем parts_uid к строкам для сравнения // Фильтрация товаров по совпадению part_uids //console.log(filteredProducts); //пихаем все отфильтрованные позиции в массив //console.log(intersection_tovar1); //если это категория для 2 группы //console.log("Проверяем товары в корзине для второй группы категории"); // Преобразуем parts_uid к строкам для сравнения // Фильтрация товаров по совпадению part_uids //console.log(filteredProducts); //пихаем все отфильтрованные позиции в массив //console.log(intersection_tovar1); //если активен режим id товаров ////console.log(resultnodelist); //console.log("А это просто id товара"); //находим пересечение между массивами А и массивом товаров //console.log(intersection_tovar1); ////console.log(intersection_tovar1); //находим в массиве товаров корзины того чего нет в массиве А ////console.log(difference_tovar1); //функция поиска поля для ввода ПРОМОКОДА и проверки массивов промокодов на персечение c тем что ввели в корзине // Массив А - my_name_pomocode1 // Массив Б - my_name_pomocode2 ////console.log(pomocode_input_area.value.toUpperCase()); //если поле ввода промокода существует то выполняем код // Визуально тоже всегда большие буквы // На каждый ввод текста — преобразуем в верхний регистр и убираем пробелы // нормализуем // восстанавливаем позицию курсора // блокируем пробел с клавиатуры //удаляем пробел если его вставят случайно //создаем массив из значения поля ввода ПРОМОКОДА //пихаем переменную в массив //toUpperCase значит все чтобы было с большой буквы ////console.log(promocode_cart_array); //проверка на пересечение с первым массивом ПРОМОКОДОВ //проверка на пересечение с вторым массивом ПРОМОКОДОВ // ПОДКЛЮЧЕНИЕ И ВЫГРУЗКА ТОВАРОВ В массив // Если есть следующая страница, загружаем её рекурсивно // здесь можешь вызвать нужную тебе обработку товаров //Запуск функции при открытии корзины, любой ////console.log("Корзина открыта"); ////console.log("Корзина закрыта"); // Старт проверки корзины
Тип продукта: бальзам для волос
Weight: 200 g