Минимальное количество товара в miniShop2

Всем привет! Столкнулся с такой проблемой, необходимо указать минимальное количество товара, скажем 5 штук, но сделать это так, чтобы покупатель не смог поставить меньше? Есть ли готовые решения?
Андрей Копп
15 октября 2015, 19:23
modx.pro
2
2 778
0

Комментарии: 4

Максим Кузнецов
16 октября 2015, 11:29
3
+3
Задача решается путем реализации 2х составляющих:

1. Js (идентификатор и алерт заменить на подходящие себе):
$( ".ms2_form input[name='count']" ).change(function() {
	$.jGrowl("Минимальное количество товаров для заказа - 5 шт", {theme: 'error', position: 'center'});
	$(this).val("5");
});

2. Плагин на события msOnBeforeAddToCart и msOnBeforeChangeInCart
<?php
if ($modx->event->name = 'msOnBeforeAddToCart' || $modx->event->name = 'msOnBeforeChangeInCart') {
	$values = & $modx->event->returnedValues;
	if ($values['count'] < 5) {
		$values['count'] = 5;
	}
}
— как-то так.
    Андрей Копп
    17 октября 2015, 16:40
    0
    А как js изменить, если у меня там уже прописано:

    <script type="text/javascript">
    $('#msCart input[name="count"]').change(function(){
    	var count = $(this).val(); 
    	var singlePrice = parseInt($(this).closest('.tab_row').children(".tab_sum").text());
    	$(this).closest('.tab_row').children(".tab_pr").children("span").html(count * singlePrice);
    	$.jGrowl("Минимальное количество товаров для заказа - 5 шт", {theme: 'error', position: 'center'});
    	$(this).val("5");
    });
    </script>
    Сейчас ошибка не даёт ни добавить 1 товар, ни уменьшить на 1. Про уменьшить так в принципе и надо, а добавлять должно и по одному, но дело в том, что нужно ещё менять на лету цены со скидкой, а не только общую цену. В JS ноль(((
      Максим Кузнецов
      17 октября 2015, 19:24
      0
      Упс, извиняюсь, забыл дописать условие:
      $( ".ms2_form input[name='count']" ).change(function() {
      	if ($(this).val() < 5) {
      		$.jGrowl("Минимальное количество товаров для заказа - 5 шт", {theme: 'error', position: 'center'});
      		$(this).val("5");	
      	}
      });
      Александр Наумов
      10 декабря 2017, 01:57
      0
      Не подскажите, как выбрать только одну единицу из всего ассортимента?
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4