Выбор количества в категории

fantats

Постоялец
Регистрация
30 Ноя 2014
Сообщения
327
Реакции
195
Всем привет.
Prestashop 1.6
Тема не поддерживает выбор количества в спике категорий и также хотелось что бы была метка что уже в корзине
например как на этом сайте

Для просмотра ссылки Войди или Зарегистрируйся (автор тусовался на этом форуме пока молчит)

upload_2020-11-6_14-40-4.png


может есть модуль у кого-то типа
Для просмотра ссылки Войди или Зарегистрируйся

Буду очень благодарен.
 
Привет!
Достаточно взять форму с количеством товара из tpl страницы товара и вставить в цикл формирования товаров на странице категории.
Доработать стили, перенести js.

А вот на счет показывать, что товар уже в корзине, тут нюансов много, можно по id товара сделать проверку на нахождение в корзине, а если в магазине есть комбинации, покупатель может запутаться. + надо будет дорабатывать фильтрацию, пагинацию и ещё кучу всего, чтобы это отображалось корректно на всех сценариях.

Если не решите, то пишите в телегу или скайп @PrestaGeek - помогу.
 
нашел и вставил фрагмент tpl
{if !$PS_CATALOG_MODE}
<p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || $PS_CATALOG_MODE}{/if}>
<label for="quantity_wanted">{l s='Quantity'}</label>
<input type="text" min="1" name="qty" id="quantity_wanted" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}"/>
<span class="btn-wrap">
<a href="#" data-field-qty="qty" class="btn btn-default button-plus product_quantity_up">
<span>
<i>+</i>
</span>
</a>
<a href="#" data-field-qty="qty" class="btn btn-default button-minus product_quantity_down">
<span>
<i>-</i>
</span>
</a>
</span>
<span class="clearfix"></span>
</p>
{/if}
далее с js не очень
только нашел фрагмент для кнопок + и -
// The button to decrement the product value
$(document).on('click', '.product_quantity_down', function(e) {
e.preventDefault();
fieldName = $(this).data('field-qty');
var currentVal = parseInt($('input[name='+fieldName+']').val());
if (!isNaN(currentVal) && currentVal > 1) {
$('input[name='+fieldName+']').val(currentVal - 1).trigger('keyup');
} else {
$('input[name='+fieldName+']').val(1);
}
$('#quantity_wanted').change();
});
// The button to increment the product value
$(document).on('click', '.product_quantity_up', function(e) {
e.preventDefault();
fieldName = $(this).data('field-qty');
var currentVal = parseInt($('input[name='+fieldName+']').val());
if (!allowBuyWhenOutOfStock && quantityAvailable > 0) {
quantityAvailableT = quantityAvailable;
} else {
quantityAvailableT = 100000000;
}
if (!isNaN(currentVal) && currentVal < quantityAvailableT) {
$('input[name='+fieldName+']').val(currentVal + 1).trigger('keyup');
} else {
$('input[name='+fieldName+']').val(quantityAvailableT);
}
$('#quantity_wanted').change();
});

результат

....с оформлением разберусь главное функционал :)

Если не решите, то пишите в телегу или скайп @PrestaGeek - помогу.
- давайте сюда всем будет
 
.... возможно в этой строке нужно подправить?
ajaxCart.add(idProduct, null, false, this, $('#quantity_to_cart_'+idProduct+'').val());

приложил js
 

Вложения

  • ajax-cart.zip
    8,1 KB · Просмотры: 3
Назад
Сверху