Выбор количества товара для покупки в категории
Понадобилась возможность ввода количества товара непосредственно на странице категории, чтобы сразу ввести необходимое количество, и положить в корзину.
Для этого в файл catalog/controller/product/category.php (если используете FilterPro - /catalog/controller/module/filterpro.php) после:
'product_id' => $result['product_id'],
надо добавить:
'minimum' => $result['minimum'],
Далее выводим окно для ввода:
В файл /catalog/view/theme/moneymaker/template/product/category.tpl (если используете FilterPro - /catalog/view/theme/moneymaker/template/module/filterpro_products.tpl)после:
<div class="buy-buttons">
<div class="btn-group">
добавляем:
<input data-toggle="tooltip" title="Количество" class="mega_quantity" type="text" name="quantity" size="1" value="<?php echo $product['minimum']; ?>" id="quantity_<?php echo $product['product_id']; ?>"/>
<input type="hidden" name="product_id" size="2" value="<?php echo $product['product_id']; ?>" />
Чтобы кнопка "купить" положила в корзину именно то количество товара, которое мы ввели, меняем кнопку:
<button class="btn btn-primary" type="button" <?php if ($this->config->get('mmr_common_addtocart_hide_enabled')&&$product['quantity']<1) { ?>disabled="disabled" <?php } ?>onclick="addToCart('<?php echo $product['product_id']; ?>');"><?php if ($this->config->get('mmr_common_addtocart_hide_enabled')&&$product['quantity']<1) { ?><?php echo $product['stock']; ?><?php } else { ?><i class="fa fa-shopping-cart"></i> <?php echo $button_cart; ?><?php } ?></button>
на это:
<button data-toggle="tooltip" title="В корзину" class="btn btn-primary" type="button" <?php if ($this->config->get('mmr_common_addtocart_hide_enabled')&&$product['quantity']<1) { ?>disabled="disabled" <?php } ?>onclick="addToCart('<?php echo $product['product_id']; ?>',document.getElementById('quantity_<?php echo $product['product_id']; ?>').value);"><?php if ($this->config->get('mmr_common_addtocart_hide_enabled')&&$product['quantity']<1) { ?><?php echo $product['stock']; ?><?php } else { ?><i class="fa fa-shopping-cart"></i> <?php echo $button_cart; ?><?php } ?></button>
Стиль для input я сделал такой:
.mega_quantity{
float: left;
text-align: center;
border-radius: 20px / 40px;
border-bottom-right-radius: 0;
border-top-right-radius: 0;
border: 1px solid #CECECE;
height: 28px;
}
Остальные стили, для адаптивности, правим по вкусу.
В итоге получилось так:
Спасибо RGB за помощь.