Как разрешить активацию промокода только от определённой суммы Tilda
Бассейн на дачу
SKU: 700.435667
40000
р.
70000
р.
Сборный каркасный бассейн серии Intex Prism Frame прямоугольной формы в DELUXE комплектации с фильтр-насосом, лестницей. Запатентованная технология SUPER-TOUGH обеспечивает надежность и долговечность бассейна

Как разрешить активацию промокода только от определённой суммы Tilda

1
Создали корзину с полем промокод (тестовый промокод для примера D15)
2
Создали блок BF503 со ссылкой #popup:error
Задали заголовок - Ошибка!
Задали описание -
Чтобы сработал промокод - цена заказа должна быть выше 100 000 руб
3
Добавили блок Т123 и вставили в него код
В коде заменили свой лимит для промокода
//Лимит для промокода
const limit = 100000;
Библиотека для примера

<a href="#popup:error" class="error-popup"></a>

<script>

//Лимит для промокода
const limit = 100000;

document.addEventListener("DOMContentLoaded", function(){

let saveinputPC='';
let cartID = $('div[data-record-type="706"]').attr('id').replace(/[^0-9]/g, '');
let pcLid = $('.t-input-group_pc').attr('data-input-lid');

setTimeout(function(){
    $(".t-inputpromocode__btn").wrap('<div class="pcodeWrp"></div>');
 }, 1000);
 setTimeout(function(){ 
     saveinputPC = $('.t-inputpromocode__wrapper').html()
 }, 1500);


$(document).on('click','.pcodeWrp', function(){
    let summ = +tcart.prodamount;
    if(summ<limit){
        $('.error-popup')[0].click();
    };
});

function ChangePromo(){
    let summ = +tcart.prodamount;
    
    if(summ>=limit){
        $('.pcodeWrp').removeClass('blok-promo');
    }else{
        $('.pcodeWrp').addClass('blok-promo');
        
        //Удалить промокод, если введён
        if ( window.tcart.hasOwnProperty("promocode") ){
            delete window.tcart.promocode; 
            tcart__updateTotalProductsinCartObj();
            tcart__reDrawTotal();
        
            $('.t-inputpromocode__wrapper').html(saveinputPC);
            t_input_promocode_init(cartID,pcLid);
        };
        
    };

}; 

function startChPromo(){
    ChangePromo();
    setTimeout(function(){ ChangePromo()}, 4500);
};

//При открытии страницы
setTimeout(function(){
    weightDiv = document.createElement('div');
    weightDiv.className = "t706__cartwin-weight";
    startChPromo();
}, 1500);

//При нажатии на кнопку корзину
let cartIcon = document.querySelectorAll('.t706__carticon');
cartIcon.forEach(i => i.addEventListener('click',  startChPromo ) );

//При нажатии на минус, плюс и удаление в корзине
let cartProd = document.querySelectorAll('.t706__cartwin-products');
cartProd.forEach(i => i.addEventListener('click',  startChPromo ) );

//При потере фокуса в поле количества в корзине
let cartQ = document.querySelectorAll('.t706__cartwin-products');
for (let i = 0; i < cartQ.length; i++) {
   cartQ[i].addEventListener('input', function() {
    setTimeout(function(){
        let cartQinp = document.querySelectorAll('.t706__cartwin-products input');
        cartQinp.forEach(i => i.addEventListener('focusout',  startChPromo ) );
    }, 500);    
   });
};

//При нажатии на кнопку #order , minus, plus, delete
document.addEventListener('click', function(e){
    let el = false; let link = e.target.getAttribute('href');
    if (link != null) { if(link.includes('#order')) el = true;
    }else{  if( e.target.closest('a[href^="#order"]') !=null ) el = true };
    if(el) startChPromo();
});

});
</script>


<style>
.t-inputpromocode__wrapper {
    display: flex !important;
}

.t-inputpromocode__btn {
    height: 56px !important;
}    

.pcodeWrp {
    cursor: pointer;
}

.pcodeWrp.blok-promo>div {
    pointer-events: none;
}

</style>
Made on
Tilda