Думаю так лучше будет
/catalog/view/theme/default/template/checkout/custom.tpl
Это
<div class="row">
Меняем на это
<div class="row data-check">
И находите где начинается <script> после этой строки добавляем
$('body').on('DOMSubtreeModified', '#custom-cart', function(){
function timeout1(){
var data_check = $('.data-check .col-sm-8').text();
if ((!($('.alert.alert-warning').length)) && ($.trim(data_check) == '')) {;
location.reload();
}
}
setTimeout(timeout1, 1000);
function timeout2(){
var data_check2 = $('#custom-cart').text();
if (($('.alert.alert-warning').length) && ($.trim(data_check2) == '')) {;
location.reload();
}
}
setTimeout(timeout2, 1000);
});
и еще если надо скрывать все данные и кнопку оформить если недостаточное количество товара и обратно
/catalog/view/javascript/custom/cart.js
Заменяем это
if (json['error']){
json['error'].forEach(function(error){
$('.breadcrumb').after('<div class="alert alert-warning">' + error + '</div>')
});
}
На это
if (json['error']){
json['error'].forEach(function(error){
$('.breadcrumb').after('<div class="alert alert-warning">' + error + '</div>');
if (error == 'Продукты отмеченные *** отсутствуют в нужном количестве или их нет в наличии!') {
$('#custom-cart+.row, #custom-control').hide();
}
});
}
if (($('.alert.alert-warning').html() !== 'Продукты отмеченные *** отсутствуют в нужном количестве или их нет в наличии!') || !($('.alert.alert-warning'))) {
$('#custom-cart+.row, #custom-control').show();
}
и
И ниже еще такой же блок
if (json['error']){
json['error'].forEach(function(error){
$('.breadcrumb').after('<div class="alert alert-warning">' + error + '</div>')
});
}
Заменить на это
if (json['error']){
json['error'].forEach(function(error){
$('.breadcrumb').after('<div class="alert alert-warning">' + error + '</div>');
if (error == 'Продукты отмеченные *** отсутствуют в нужном количестве или их нет в наличии!') {
$('#custom-cart+.row, #custom-control').hide();
}
});
}